1.0.0#
This is a major release, with major changes, including backwards-incompatible changes.
Major changes#
- full Python 3 compatibility - one code base for both Python 2 and Python 3 
- package name and import name now match – use - import pydicomrather than- import dicom.
- added handlers for converting (7fe0,0010) Pixel Data to a numpy.ndarray - optional GDCM support for reading files with compressed pixel data (#18) 
- optional Pillow and jpeg_ls support for reading some compressed pixel data files 
- support for decompressing a compressed dataset in-place 
 
- DICOM dictionary updated to 2017c 
- cleaned up DICOM dictionary code, old non-DICOM-keyword code removed 
Other enhancements#
- added - util/fixer.pycallbacks available to fix non DICOM-compliant values before exceptions thrown
- added context management methods to - Dataset
- added - misc.is_dicom()function to check for DICOM file format
- added date/time converters (#143) 
- added option to attempt other VRs if translate fails (#197) 
- added heuristics to read files that have no preamble or file meta information 
- support for multi-valued DA, DT, TM data elements (#212) 
- DataElement: added- keywordand- is_retiredproperties
- datadict: added- dictionary_is_retired()
- datadict: added ability to add custom DICOM dictionary items via- add_dict_entry()and- add_dict_entries()
- added some support for pickle 
- added support for VRs - OD,- OLand- UC
- added support for Thai, Japanese and Chinese encodings (#346, #353) 
- added support for slicing to Dataset 
- add/update TransferSyntaxUID when writing standard 
- renamed - UIDpackage to- uid(conforms to Python standard)
- added property - uid.is_private
- added definitions for storage SOP Class UIDs (#172) 
- added possibility to read only specific tags (#95) 
- added missing meta elements when writing DICOM file 
- added - encapsgenerator functions to access compressed frames
- read_filechanged to- dcmread,- write_fileto- dcmwritefor greater clarity. Previous names still available for backwards compatibility.
Infrastructure#
- added TravisCI and AppVeyor builds for automatic tests under Linux and Windows 
- added automatic code coverage builds and PEP-8 checks 
- added automatic documentation builds on GitHub Pages for development and release builds 
- added PyPy support 
- removed support for Python 2.6, added support for Python 3.6 
Fixes#
- correctly handle PlanarConfiguration==0 (#151) 
- updated uid generation to ensure uniqueness (#125) 
- handle missing patient data in - show_dicomdir
- assume default transfer syntax if none in file meta (#258) 
- fixed reading/writing of empty tags and tags with bad VR 
- fixed reading AE elements with leading or trailing spaces 
- fixed handling of ambiguous VR elements 
- fixed handling for several error conditions 
- fixed Latin5 (Turkish) character set handling 
- a lot of other small fixes… 
