pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/biology/py-pydicom py-pydicom: updated to 2.2.2



details:   https://anonhg.NetBSD.org/pkgsrc/rev/20a1b1af5f7a
branches:  trunk
changeset: 459339:20a1b1af5f7a
user:      adam <adam%pkgsrc.org@localhost>
date:      Mon Oct 04 08:54:01 2021 +0000

description:
py-pydicom: updated to 2.2.2

Version 2.2.0

Changes
-------
* Data elements with a VR of **AT** must now be set with values
  acceptable to :func:`~pydicom.tag.Tag`, and are always stored as a
  :class:`~pydicom.tag.BaseTag`.  Previously, any Python type could be
  set.
* :meth:`BaseTag.__eq__()<pydicom.tag.BaseTag.__eq__>` returns ``False`` rather
  than raising an exception when the operand cannot be converted to
  :class:`~pydicom.tag.BaseTag` (:pr:`1327`)
* :meth:`DA.__str__()<pydicom.valuerep.DA.__str__>`,
  :meth:`DT.__str__()<pydicom.valuerep.DT.__str__>` and
  :meth:`TM.__str__()<pydicom.valuerep.TM.__str__>` return valid DICOM
  strings instead of the formatted date and time representations
  (:issue:`1262`)
* If comparing :class:`~pydicom.dataset.FileDataset` instances, the file
  metadata is now ignored. This makes it possible to compare a
  :class:`~pydicom.dataset.FileDataset` object with a
  :class:`~pydicom.dataset.Dataset` object.
* :func:`~pydicom.pixel_data_handlers.rle_handler.rle_encode_frame` is
  deprecated and will be removed in v3.0, use
  :meth:`~pydicom.dataset.Dataset.compress` or
  :attr:`~pydicom.encoders.RLELosslessEncoder` instead.
* :func:`~pydicom.filereader.read_file` is deprecated and will be removed in
  v3.0, use :func:`~pydicom.filereader.dcmread` instead.
* :func:`~pydicom.filewriter.write_file` is deprecated and will be removed in
  v3.0, use :func:`~pydicom.filewriter.dcmwrite` instead.
* Data dictionaries updated to version 2021b of the DICOM Standard
* :class:`~pydicom.dataset.Dataset` no longer inherits from :class:`dict`

Enhancements
------------
* Added a command-line interface for pydicom.  Current subcommands are:

    * ``show``: display all or part of a DICOM file
    * ``codify`` to produce Python code for writing files or sequence items
      from scratch.

  Please see the :ref:`cli_guide` for examples and details
  of all the options for each command.
* A field containing an invalid number of bytes will result in a warning
  instead of an exception when
  :attr:`~pydicom.config.convert_wrong_length_to_UN` is set to ``True``.
* Private tags known via the private dictionary will now get the configured
  VR if read from a dataset instead of **UN** (:issue:`1051`).
* While reading explicit VR, a switch to implicit VR will be silently attempted
  if the VR bytes are not valid VR characters, and config option
  :attr:`~pydicom.config.assume_implicit_vr_switch` is ``True`` (default)
* New functionality to help with correct formatting of decimal strings (**DS**)

    * Added :func:`~pydicom.valuerep.is_valid_ds` to check whether a string is
      valid as a DICOM decimal string and
      :func:`~pydicom.valuerep.format_number_as_ds` to format a given ``float``
      or ``Decimal`` as a DS while retaining the highest possible level of
      precision
    * If :attr:`~pydicom.config.enforce_valid_values` is set to ``True``, all
      **DS** objects created will be checked for the validity of their string
      representations.
    * Added optional ``auto_format`` parameter to the init methods of
      :class:`~pydicom.valuerep.DSfloat` and
      :class:`~pydicom.valuerep.DSdecimal` and the :func:`~pydicom.valuerep.DS`
      factory function to allow explicitly requesting automatic formatting of
      the string representations of these objects when they are constructed.
* Added methods to construct :class:`~pydicom.valuerep.PersonName` objects
  from individual components of names (``family_name``, ``given_name``, etc.).
  See :meth:`~pydicom.valuerep.PersonName.from_named_components` and
  :meth:`~pydicom.valuerep.PersonName.from_named_components_veterinary`.
* Added support for downloading the large test files with the `requests
  <https://docs.python-requests.org/en/master/>`_ package in addition to
  :mod:`urllib.request` (:pr:`1340`)
* Ensured :func:`~pydicom.pixel_data_handlers.util.convert_color_space` uses
  32-bit floats for calculation, added `per_frame` flag to allow frame-by-frame
  processing and improved the speed by ~20-60% (:issue:`1348`)
* Optimisations for RLE encoding using *pydicom* (~40% faster).
* Added support for faster decoding (~4-5x) and encoding (~20x) of *RLE Lossless*
  *Pixel Data* via the `pylibjpeg-rle
  <https://github.com/pydicom/pylibjpeg-rle>`_ plugin (:pr:`1361`, :pr:`1372`).
* Added :func:`Dataset.compress()<pydicom.dataset.Dataset.compress>` function for
  compressing uncompressed pixel data using a given encoding format as specified
  by a UID. Only *RLE Lossless* is currently supported (:pr:`1372`)
* Added :mod:`~pydicom.encoders` module and the following encoders:

  * :attr:`~pydicom.encoders.RLELosslessEncoder` with 'pydicom', 'pylibjpeg'
    and 'gdcm' plugins
* Added `read` parameter to :func:`~pydicom.data.get_testdata_file`
  to allow reading and returning the corresponding dataset (:pr:`1372`)
* Handle decoded RLE segments with padding (:issue:`1438`)
* Add option to JSON functions to suppress exception and continue (:pr:`1332`)
* Allow searching :class:`~pydicom.fileset.FileSet` s for a list of elements (:pr:`1428`)
* Added hash function to SR :class:`~pydicom.sr.Code` (:pr:`1434`)


Fixes
-----
* Fixed pickling a :class:`~pydicom.dataset.Dataset` instance with sequences
  after the sequence had been read (:issue:`1278`)
* Fixed JSON export of numeric values
* Fixed handling of sequences of unknown length that switch to implicit
  encoding, and sequences with VR **UN** (:issue:`1312`)
* Do not load external data sources until needed - fixes problems with
  standard workflow if `setuptools` are not installed (:issue:`1341`)
* Fixed empty **PN** elements read from file being :class:`str` rather than
  :class:`~pydicom.valuerep.PersonName` (:issue:`1338`)
* Fixed handling of JPEG (10918-1) images compressed using RGB colourspace
  rather than YBR with the Pillow pixel data handler (:pr:`878`)
* Allow to deepcopy a `~pydicom.dataset.FileDataset` object (:issue:`1147`)
* Fixed elements with a VR of **OL**, **OD** and **OV** not being set correctly
  when an encoded backslash was part of the element value (:issue:`1412`)
* Fixed expansion of linear segments with floating point steps in
  segmented LUTs (:issue:`1415`)
* Fixed handling of code extensions with person name component delimiter
  (:pr:`1449`)
* Fixed bug decoding RBG jpg with APP14 marker due to change in Pillow (:pr:`1444`)
* Fixed decoding for `FloatPixelData` and `DoubleFloatPixelData` via
  `pydicom.pixel_data_handlers.numpy_handler` (:issue:`1457`)

diffstat:

 biology/py-pydicom/Makefile |   4 ++--
 biology/py-pydicom/distinfo |  10 +++++-----
 2 files changed, 7 insertions(+), 7 deletions(-)

diffs (27 lines):

diff -r b569ad337bf9 -r 20a1b1af5f7a biology/py-pydicom/Makefile
--- a/biology/py-pydicom/Makefile       Mon Oct 04 07:46:18 2021 +0000
+++ b/biology/py-pydicom/Makefile       Mon Oct 04 08:54:01 2021 +0000
@@ -1,6 +1,6 @@
-# $NetBSD: Makefile,v 1.4 2021/08/29 12:59:39 adam Exp $
+# $NetBSD: Makefile,v 1.5 2021/10/04 08:54:01 adam Exp $
 
-DISTNAME=      pydicom-2.2.1
+DISTNAME=      pydicom-2.2.2
 PKGNAME=       ${PYPKGPREFIX}-${DISTNAME}
 CATEGORIES=    biology python
 MASTER_SITES=  ${MASTER_SITE_PYPI:=p/pydicom/}
diff -r b569ad337bf9 -r 20a1b1af5f7a biology/py-pydicom/distinfo
--- a/biology/py-pydicom/distinfo       Mon Oct 04 07:46:18 2021 +0000
+++ b/biology/py-pydicom/distinfo       Mon Oct 04 08:54:01 2021 +0000
@@ -1,6 +1,6 @@
-$NetBSD: distinfo,v 1.4 2021/08/29 12:59:39 adam Exp $
+$NetBSD: distinfo,v 1.5 2021/10/04 08:54:01 adam Exp $
 
-SHA1 (pydicom-2.2.1.tar.gz) = 7e5796c0eb7eeb2af65e1b3822ea2c6f77bcdc7a
-RMD160 (pydicom-2.2.1.tar.gz) = 90ac1f5b866bb12fa73c77dd82f2280a88331d63
-SHA512 (pydicom-2.2.1.tar.gz) = 4a4716a59428dff1774e09be405c4d39aae8f2c7a7fde9efbe11209334e94648122ac40cc59dc1176eb6af96783674cca13f082ec38046ba66f972616e06ffe4
-Size (pydicom-2.2.1.tar.gz) = 2149457 bytes
+SHA1 (pydicom-2.2.2.tar.gz) = 4fa6d8a55a200d2b88153644bee357b410f552ce
+RMD160 (pydicom-2.2.2.tar.gz) = 937f388366bc7813ac6febaa6749eb136cfde8a1
+SHA512 (pydicom-2.2.2.tar.gz) = 5f1829d445c462884debb75328f59471dea4da51701835a3a97a1c22c1c0b75730e0688558cb76ef3f7a4b29f350028190a515d73f88968a7fda09ed414ec145
+Size (pydicom-2.2.2.tar.gz) = 2149674 bytes



Home | Main Index | Thread Index | Old Index