Python-icat

Latest version: v1.5.1

Safety actively analyzes 706267 Python packages for vulnerabilities to keep your Python projects secure.

Scan your dependencies

Page 3 of 6

0.18.1

~~~~~~~~~~~~~~~~~~~

Bug fixes and minor changes
---------------------------

+ `82`_: Change the search result in the case of multiple fields from
list to tuple.

+ `76`_, `81`_: work around an issue in icat.server using `DISTINCT`
in search queries for multiple fields.

.. _76: https://github.com/icatproject/python-icat/issues/76
.. _81: https://github.com/icatproject/python-icat/pull/81
.. _82: https://github.com/icatproject/python-icat/pull/82


.. _changes-0_18_0:

0.18.0

~~~~~~~~~~~~~~~~~~~

New features
------------

+ `76`_, `78`_: add client side support for searching for multiple
fields introduced in icat.server 4.11.0. Add support for building
the corresponding queries in the in class :class:`icat.query.Query`.

Incompatible changes and deprecations
-------------------------------------

+ Since :class:`icat.query.Query` now also accepts a list of attribute
names rather then only a single one, the corresponding keyword
argument `attribute` has been renamed to `attributes` (in the
plural). Accordingly, the method
:meth:`icat.query.Query.setAttribute` has been renamed to
:meth:`icat.query.Query.setAttributes`. The old names are retained
as aliases, but are deprecated.

Bug fixes and minor changes
---------------------------

+ `79`_: fix an encoding issue in :attr:`icat.client.Client.apiversion`,
only relevant with Python 2.

+ `80`_: add :exc:`TypeError` as additional ancestor of
:exc:`icat.exception.EntityTypeError`.

.. _76: https://github.com/icatproject/python-icat/issues/76
.. _78: https://github.com/icatproject/python-icat/pull/78
.. _79: https://github.com/icatproject/python-icat/pull/79
.. _80: https://github.com/icatproject/python-icat/pull/80


.. _changes-0_17_0:

0.17.0

~~~~~~~~~~~~~~~~~~~

New features
------------

+ `65`_: Add support for the extended IDS API calls
:meth:`icat.ids.IDSClient.getSize` and
:meth:`icat.ids.IDSClient.getStatus` accepting a preparedId as
introduced in ids.server 1.11.0. Also extend the methods
:meth:`icat.ids.IDSClient.reset`,
:meth:`icat.ids.IDSClient.getDatafileIds`,
:meth:`icat.ids.IDSClient.getData`,
:meth:`icat.ids.IDSClient.getDataUrl`,
:meth:`icat.client.Client.getData`, and
:meth:`icat.client.Client.getDataUrl` to accept a preparedId in the
place of a data selection.

+ `63`_: Set a default path in the URL for ICAT and IDS respectively.

Incompatible changes and deprecations
-------------------------------------

+ Drop support for ICAT 4.2.*, deprecated in 0.13.0.

+ `61`_, `64`_: Review :mod:`icat.entities`. The entity classes
from the ICAT schema are now dynamically created based on the
information gathered with the
:meth:`icat.client.Client.getEntityInfo` ICAT API call. Code that
relied on the internals of :mod:`icat.entities` such as the class
hierarchy or that referenced any of the entity classes directly will
need to be revisited. Note that common python-icat programs don't
need to do any of that. So it is assumed that most existing
programs are not concerned.

+ Deprecate :meth:`icat.ids.IDSClient.resetPrepared`,
:meth:`icat.ids.IDSClient.getPreparedDatafileIds`,
:meth:`icat.ids.IDSClient.getPreparedData`,
:meth:`icat.ids.IDSClient.getPreparedDataUrl`,
:meth:`icat.client.Client.getPreparedData`, and
:meth:`icat.client.Client.getPreparedDataUrl`. Call the
corresponding methods without `Prepared` in the name with the same
arguments instead.

+ Deprecate support for Python 2 and Python 3.3.

+ Deprecate module :mod:`icat.icatcheck`.
This module was not intended to be used in python-icat programs
anyway.

Bug fixes and minor changes
---------------------------

+ `68`_: :ref:`wipeicat` enters an infinite loop if Datafiles are
missing from IDS storage.

+ `19`_, `69`_: Review documentation and add tutorial.

+ `62`_: Minor fixes in the error handling in `setup.py`.

+ Fix icatdata-4.10.xsd: :attr:`Study.endDate` was erroneously not
marked as optional.

+ `70`_: Fix several errors in the tests.

+ `58`_: Use specific test data for different ICAT versions.

+ `67`_, `71`_, `72`_: document the option to use suds-community
instead of suds-jurko.

Misc
----

+ Do not include the documentation in the source distribution. Rely
on the online documentation (see link in the README.rst) instead.

.. _19: https://github.com/icatproject/python-icat/issues/19
.. _58: https://github.com/icatproject/python-icat/issues/58
.. _61: https://github.com/icatproject/python-icat/issues/61
.. _62: https://github.com/icatproject/python-icat/issues/62
.. _63: https://github.com/icatproject/python-icat/issues/63
.. _64: https://github.com/icatproject/python-icat/pull/64
.. _65: https://github.com/icatproject/python-icat/pull/65
.. _67: https://github.com/icatproject/python-icat/issues/67
.. _68: https://github.com/icatproject/python-icat/issues/68
.. _69: https://github.com/icatproject/python-icat/pull/69
.. _70: https://github.com/icatproject/python-icat/pull/70
.. _71: https://github.com/icatproject/python-icat/pull/71
.. _72: https://github.com/icatproject/python-icat/issues/72


.. _changes-0_16_0:

0.16.0

~~~~~~~~~~~~~~~~~~~

New features
------------

+ `59`_: Add support for sub-commands in :mod:`icat.config`.

Incompatible changes and deprecations
-------------------------------------

+ Drop support for Python 2.6.

Bug fixes and minor changes
---------------------------

+ `60`_: Fix bad coding style dealing with function parameters.

+ Use :mod:`setuptools_scm` to manage the version number.

.. _59: https://github.com/icatproject/python-icat/issues/59
.. _60: https://github.com/icatproject/python-icat/pull/60


.. _changes-0_15_1:

0.15.1

~~~~~~~~~~~~~~~~~~~

Bug fixes and minor changes
---------------------------

+ Issue `56`_: :ref:`icatdump` fails to include
:attr:`Shift.instrument`.

+ Issue `57`_: :meth:`icat.client.Client.searchChunked` still
susceptible to LIMIT clause bug in icat.server (`Issue
icatproject/icat.server128`__).

+ Call :func:`yaml.safe_load` rather then :func:`yaml.load`, fixing a
deprecation warning from PyYAML 5.1.

.. __: https://github.com/icatproject/icat.server/issues/128
.. _56: https://github.com/icatproject/python-icat/issues/56
.. _57: https://github.com/icatproject/python-icat/issues/57


.. _changes-0_15_0:

0.15.0

~~~~~~~~~~~~~~~~~~~

New features
------------

+ `53`_: Add support for ICAT 4.10.0 including schema changes in that
version.

Incompatible changes and deprecations
-------------------------------------

+ Require pytest 3.1.0 or newer to run the test suite. Note that this
pytest version in turn requires Python 2.6, 2.7, or 3.3 and newer.

+ Drop support for Python 3.1 and 3.2. There is no known issue with
these Python versions in python-icat (so far). But since we can't
test this any more, see above, we drop the claim to support them.

Bug fixes and minor changes
---------------------------

+ `49`_: Module icat.eval is outdated.

+ `50`_, `52`_: Fix DeprecationWarnings.

+ `51`_: Fix a compatibility issue with pytest 4.1.0 in the tests.

+ `54`_: Fix a UnicodeDecodeError in the tests.

.. _49: https://github.com/icatproject/python-icat/issues/49
.. _50: https://github.com/icatproject/python-icat/issues/50
.. _51: https://github.com/icatproject/python-icat/issues/51
.. _52: https://github.com/icatproject/python-icat/issues/52
.. _53: https://github.com/icatproject/python-icat/pull/53
.. _54: https://github.com/icatproject/python-icat/issues/54


.. _changes-0_14_2:

Page 3 of 6

© 2025 Safety CLI Cybersecurity Inc. All Rights Reserved.