Python-icat

Latest version: v1.5.1

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

Scan your dependencies

Page 2 of 6

1.1.0

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

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

+ `113`_, `123`_: Add module :mod:`icat.ingest`.

+ `124`_: Add an optional keyword argument `keepInstRel` to
:meth:`icat.entity.Entity.truncateRelations`.

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

+ `126`_, `127`_: Update outdated documentation.

+ `112`_, `118`_: Extend icatdata XSD adding extra attributes to
reference objects.

+ `111`_, `121`_: Change the type of
:attr:`icat.client.Client.Register` to
:class:`weakref.WeakValueDictionary`, fixing a memory leak.

+ `119`_, `120`_: Remove `_config` attribute from
:class:`icat.config.Configuration`.

+ `115`_, `116`_: Fix the test suite to work if either PyYAML or
lxml is not available.

+ `128`_: Return an empty list from
:func:`icat.dump_queries.getDataPublicationQueries` when talking to
an ICAT server older than 5.0.

+ `117`_: Fixed deprecation warnings from upcoming Python 3.12.

+ `129`_: Review the build of the documentation at Read the Docs.

.. _111: https://github.com/icatproject/python-icat/issues/111
.. _112: https://github.com/icatproject/python-icat/issues/112
.. _113: https://github.com/icatproject/python-icat/issues/113
.. _115: https://github.com/icatproject/python-icat/issues/115
.. _116: https://github.com/icatproject/python-icat/pull/116
.. _117: https://github.com/icatproject/python-icat/pull/117
.. _118: https://github.com/icatproject/python-icat/pull/118
.. _119: https://github.com/icatproject/python-icat/issues/119
.. _120: https://github.com/icatproject/python-icat/pull/120
.. _121: https://github.com/icatproject/python-icat/pull/121
.. _123: https://github.com/icatproject/python-icat/pull/123
.. _124: https://github.com/icatproject/python-icat/pull/124
.. _126: https://github.com/icatproject/python-icat/issues/126
.. _127: https://github.com/icatproject/python-icat/pull/127
.. _128: https://github.com/icatproject/python-icat/pull/128
.. _129: https://github.com/icatproject/python-icat/pull/129


.. _changes-1_0_0:

1.0.0

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

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

+ `73`_, `106`_: Add support for the ICAT schema 5.0 extensions.

+ `102`_, `104`_: Make the `obj` argument to
:meth:`icat.client.Client.new` case insensitive.

+ `77`_, `103`_: Add a keyword argument `preset` to allow directly
passing configuration values to the constructor of class
:class:`icat.config.Config`.

+ `66`_, `75`_: Add pathlib support: methods that take a file name
argument also accept a :class:`pathlib.Path` object. Internal
representation of file system paths are changed to use
:class:`pathlib.Path` where appropriate. The predefined
configuarion variable `configFile` now supports tilde expansion.
Note incompatible changes below.

+ `74`_: :class:`icat.ids.DataSelection` also accepts
`DataCollection` as argument.

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

+ The order and arrangement of data objects in the dump file created
by :ref:`icatdump` has been changed. In some cases, older versions
of :ref:`icatingest` will fail to read dump files written by new
versions of :ref:`icatdump`.

+ As a consequence of switching to pathlib for file system paths some
return values and variables are now :class:`pathlib.Path` objects
rather then :class:`str`. This affects:

- the return value of :func:`icat.config.cfgpath`,
- the predefined configuarion variable `configFile`,
- the module variable :data:`icat.config.cfgdirs`.

+ Drop support for Python 2 and Python 3.3.

+ Drop keyword argument `attribute` and method
:meth:`icat.query.Query.setAttribute` from class
:class:`icat.query.Query`, deprecated in 0.18.0.

+ Drop module :mod:`icat.cgi`, deprecated in 0.13.0.

+ Drop module :mod:`icat.icatcheck` and exception
:exc:`icat.exception.GenealogyError`, deprecated in 0.17.0.

+ Drop methods :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`, deprecated in 0.17.0.

+ Drop the predefined configuration variable `configDir`, deprecated
in 0.13.0.

+ Drop helper function :func:`icat.exception.stripCause`, deprecated
in 0.14.0.

+ Deprecate :data:`icat.config.defaultsection`. Use the new `preset`
keyword argument to :class:`icat.config.Config` instead.

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

+ `98`_, `105`_: Review build tool chain. Add a helper class
:class:`icat.helper.Version`.

+ `101`_: Fix tests failing with PyYAML 6.0.

+ Some (more) example scripts now require ICAT 4.4.0 or newer.

.. _66: https://github.com/icatproject/python-icat/issues/66
.. _73: https://github.com/icatproject/python-icat/issues/73
.. _74: https://github.com/icatproject/python-icat/issues/74
.. _75: https://github.com/icatproject/python-icat/pull/75
.. _77: https://github.com/icatproject/python-icat/issues/77
.. _98: https://github.com/icatproject/python-icat/issues/98
.. _101: https://github.com/icatproject/python-icat/pull/101
.. _102: https://github.com/icatproject/python-icat/issues/102
.. _103: https://github.com/icatproject/python-icat/pull/103
.. _104: https://github.com/icatproject/python-icat/pull/104
.. _105: https://github.com/icatproject/python-icat/pull/105
.. _106: https://github.com/icatproject/python-icat/pull/106


.. _changes-0_21_0:

0.21.0

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

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

+ `100`_: Add read only attributes
:attr:`icat.query.Query.select_clause`,
:attr:`icat.query.Query.join_clause`,
:attr:`icat.query.Query.where_clause`,
:attr:`icat.query.Query.order_clause`,
:attr:`icat.query.Query.include_clause`, and
:attr:`icat.query.Query.limit_clause` to access the respective
clauses of the query string.

.. _100: https://github.com/icatproject/python-icat/pull/100


.. _changes-0_20_1:

0.20.1

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

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

+ `96`_: Fix failing build of the documentation at Read the Docs.

.. _96: https://github.com/icatproject/python-icat/pull/96


.. _changes-0_20_0:

0.20.0

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

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

+ `86`_, `89`_: allow SQL functions to be used on the attributes in
the arguments to :meth:`icat.query.Query.setOrder` and
:meth:`icat.query.Query.addConditions`.

Incompatible changes and new bugs
---------------------------------

+ `94`_: the implementation of `89`_ changed the internal data
structures in :attr:`icat.query.Query.conditions` and
:attr:`icat.query.Query.order`. These attributes are considered
internal and are deliberately not documented, so one could argue
that this is not an incompatible change. But the changes also have
an impact on the return value of :meth:`icat.query.Query.__repr__`
such that it is not suitable to recreate the query object.

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

+ `90`_, `91`_, `95`_: :attr:`icat.query.Query.join_specs` was not
taken into account in :meth:`icat.query.Query.copy` and
:meth:`icat.query.Query.__repr__`.

.. _86: https://github.com/icatproject/python-icat/issues/86
.. _89: https://github.com/icatproject/python-icat/pull/89
.. _90: https://github.com/icatproject/python-icat/issues/90
.. _91: https://github.com/icatproject/python-icat/issues/91
.. _94: https://github.com/icatproject/python-icat/issues/94
.. _95: https://github.com/icatproject/python-icat/pull/95


.. _changes-0_19_0:

0.19.0

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

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

+ `85`_: add an argument `join_specs` to the constructor of class
:class:`icat.query.Query` and a corresponding method
:meth:`icat.query.Query.setJoinSpecs` to override the join
specification to be used in the created query for selected related
objects.

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

+ `83`_, `84`_: enable ordering on one to many relationships in
class :class:`icat.query.Query`.

+ `84`_: Add warning classes
:exc:`icat.exception.QueryOneToManyOrderWarning` and
:exc:`icat.exception.QueryWarning`, the latter being a common base
class for warnings emitted during creation of a query.

.. _83: https://github.com/icatproject/python-icat/issues/83
.. _84: https://github.com/icatproject/python-icat/pull/84
.. _85: https://github.com/icatproject/python-icat/pull/85


.. _changes-0_18_1:

Page 2 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.