Python-icat

Latest version: v1.5.1

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

Scan your dependencies

Page 1 of 6

4.5

:meth:`icat.client.Client.getEntityInfo` also lists `createId`,
`createTime`, `modId`, and `modTime` as attributes. This need to be
taken into account in :mod:`icat.icatcheck`.

+ The last fix in 0.8.0 on the string representation operator
:meth:`icat.query.Query.__str__` was not complete, the operator
still had unwanted side effects.

+ Fix a bug in the handling of errors raised from the ICAT or the IDS
server. This bug affected only Python 3.

+ Add proper type checking and conversion for setting an attribute
that corresponds to a one to many relationship in class
:class:`icat.entity.Entity`. Accept any iterable of entities as
value.

+ `9`_: :ref:`icatingest` with `duplicate=CHECK` may fail when
attributes are not strings. Note that this bug was only present in
an alpha version, but not in any earlier release version.

+ Source repository moved to Git. This gives rise to a few tiny
changes. To name the most visible ones: python2_6.patch is now auto
generated by comparing two source branches and must be applied with
`-p1` instead of `-p0`, the format of the icat module variable
:attr:`icat.__revision__` has changed.

+ Review default exports of modules. Mark some helper functions as
internal.

.. _1: https://github.com/icatproject/python-icat/issues/1
.. _3: https://github.com/icatproject/python-icat/issues/3
.. _4: https://github.com/icatproject/python-icat/issues/4
.. _5: https://github.com/icatproject/python-icat/issues/5
.. _6: https://github.com/icatproject/python-icat/issues/6
.. _9: https://github.com/icatproject/python-icat/issues/9
.. _10: https://github.com/icatproject/python-icat/issues/10


.. _changes-0_8_0:

1.5.1

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

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

+ `165`_: Fix missing documentation on the environment injected by
:class:`icat.ingest.IngestReader` into the input as changed in
1.5.0.

.. _165: https://github.com/icatproject/python-icat/pull/165


.. _changes-1_5_0:

1.5.0

- Add :meth:`icat.ids.IDSClient.getDatafileIds` and
:meth:`icat.ids.IDSClient.getPreparedDatafileIds` calls.

- :meth:`icat.ids.IDSClient.getStatus` allows `sessionId` to be
None.

+ Add new exception class
:exc:`icat.exception.ICATNotImplementedError` that is supposed to be
raised by the upcoming version 4.6.0 of icat.server.

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

+ `13`_: :meth:`icat.client.Client.searchChunked` raises exception if
the query contains a percent character.

+ `15`_: :ref:`icatdump` raises
:exc:`icat.exception.DataConsistencyError` for
`DataCollectionParameter`.

+ `14`_: :meth:`icat.entity.Entity.__sortkey__` may raise
:exc:`RuntimeError` "maximum recursion depth exceeded".

+ Allow a :class:`icat.ids.DataSelection` to be created from (almost)
any Iterator, not just a :class:`Sequence`. Store the object ids in
:class:`icat.ids.DataSelection` internally in a :class:`set` rather
then a :class:`list`.

+ Add optional arguments `objindex` to
:meth:`icat.dumpfile.DumpFileReader.getobjs` and `keyindex` to
:meth:`icat.dumpfile.DumpFileWriter.writedata` to allow the caller
to control these internal indices.

+ Add optional argument `chunksize` to
:meth:`icat.dumpfile.DumpFileWriter.writedata`.

+ The constructor of class :class:`icat.query.Query` checks the
version of the ICAT server and raises an error if too old.

+ The :meth:`icat.ids.IDSClient.getIcatUrl` call checks the version of
the IDS server.

+ Some changes in the test suite, add more tests.

.. _13: https://github.com/icatproject/python-icat/issues/13
.. _14: https://github.com/icatproject/python-icat/issues/14
.. _15: https://github.com/icatproject/python-icat/issues/15


.. _changes-0_9_0:

1.4.0

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

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

+ `155`_, `156`_: Add an option to disable parsing of command line
arguments in :class:`icat.config.Config`.

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

+ `152`_: Fix a documentation error
+ `154`_: Fix a duplicate test name

Misc
----

+ `157`_: :mod:`icat.ingest` now considered stable.

.. _152: https://github.com/icatproject/python-icat/pull/152
.. _154: https://github.com/icatproject/python-icat/pull/154
.. _155: https://github.com/icatproject/python-icat/issues/155
.. _156: https://github.com/icatproject/python-icat/pull/156
.. _157: https://github.com/icatproject/python-icat/pull/157


.. _changes-1_3_0:

1.3.0

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

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

+ `143`_, `144`_: Make it easier to configure XSLT files to use for
processing the input in custom versions of
:class:`icat.ingest.IngestReader`.

+ `148`_, `149`_: Inject an additional element with environment
information into the input data in :class:`icat.ingest.IngestReader`.

+ `146`_, `147`_, `151`_: Better error handling in
:class:`icat.ingest.IngestReader`.

Incompatible changes
--------------------

+ `144`_: Drop class attribute
:attr:`icat.ingest.IngestReader.XSLT_name` in favour of
:attr:`icat.ingest.IngestReader.XSLT_Map`.

Note that :mod:`icat.ingest` has been declared experimental for now.

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

+ `141`_, `142`_, `150`_: Review documentation.

+ `145`_: Review build tool chain.

.. _141: https://github.com/icatproject/python-icat/issues/141
.. _142: https://github.com/icatproject/python-icat/pull/142
.. _143: https://github.com/icatproject/python-icat/issues/143
.. _144: https://github.com/icatproject/python-icat/pull/144
.. _145: https://github.com/icatproject/python-icat/pull/145
.. _146: https://github.com/icatproject/python-icat/issues/146
.. _147: https://github.com/icatproject/python-icat/pull/147
.. _148: https://github.com/icatproject/python-icat/issues/148
.. _149: https://github.com/icatproject/python-icat/pull/149
.. _150: https://github.com/icatproject/python-icat/pull/150
.. _151: https://github.com/icatproject/python-icat/pull/151


.. _changes-1_2_0:

1.2.0

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

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

+ `125`_, `140`_: Add support to link datasets with samples in
:mod:`icat.ingest`.

+ `122`_, `133`_: Allow referencing related objects by reference key
in object references in XML ICAT data file format.

Incompatible changes
--------------------

+ `138`_, `139`_: Fix the input that :mod:`icat.ingest` generates on
the fly to be valid according to the ICAT data file schema. This
also affects the input that the module accepts: the order of
subelements of `data` need to be changed such that
`datasetTechnique` comes before `datasetInstrument`.

Note that :mod:`icat.ingest` has been declared experimental for now.

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

+ `131`_, `135`_: Fix :meth:`icat.ids.IDSClient.getApiVersion` to
yield correct results for ids.server 2.0.0 and newer.

+ `132`_, `136`_: Fix a spurious :exc:`AttributeError` on cleanup
after connecting to an invalid url.

+ `130`_, `137`_: Review test suite.

.. _122: https://github.com/icatproject/python-icat/issues/122
.. _125: https://github.com/icatproject/python-icat/issues/125
.. _130: https://github.com/icatproject/python-icat/issues/130
.. _131: https://github.com/icatproject/python-icat/issues/131
.. _132: https://github.com/icatproject/python-icat/issues/132
.. _133: https://github.com/icatproject/python-icat/pull/133
.. _135: https://github.com/icatproject/python-icat/pull/135
.. _136: https://github.com/icatproject/python-icat/pull/136
.. _137: https://github.com/icatproject/python-icat/pull/137
.. _138: https://github.com/icatproject/python-icat/issues/138
.. _139: https://github.com/icatproject/python-icat/pull/139
.. _140: https://github.com/icatproject/python-icat/pull/140


.. _changes-1_1_0:

Page 1 of 6

© 2024 Safety CLI Cybersecurity Inc. All Rights Reserved.