1.4.0#
Fixes#
- Fixed Query Retrieve service class not responded with - 0x0000(Success) if no matches were yielded by the C-FIND request handler.
- Fixed association being aborted due to failure to decode a rejected presentation context when the transfer syntax value is empty (#342) 
- Checkpoint added to the reactor in - Associationto prevent possible race conditions:- When acting as the Acceptor and calling one of the - Association.send_*()methods.
- During an A-RELEASE collision. 
 
Enhancements#
- Added - Event.move_destination(for- evt.EVT_C_MOVE),- Event.action_type(for- evt.EVT_N_ACTION),- Event.event_type(for- evt.EVT_N_EVENT_REPORT) and- Event.eventproperties (#353)
- Added - meta_uidkeyword parameters to the- Association.send_n_*()methods to allow the use of Meta SOP Classes (such as those used in the Print Management service class)
- Added Basic Grayscale Print Management Meta SOP Class and Basic Color Print Management Meta SOP Class to - sop_class.
- Added support for the following service classes: - Protocol Approval Query Retrieve (#327) 
- Application Event Logging 
- Instance Availability Notification 
- Media Creation Management 
- Print Management 
- Unified Procedure Step 
- RT Machine Verification 
- Storage Commitment 
 
- Added handling of non-conformant Presentation Context AC (reject) PDUs which contain no Transfer Syntax Sub-item (#361) 
- ae_titleand- contextskeyword arguments added to- start_server()
- Invalid (0000,1030) Move Originator Application Entity Title values received in C-STORE service requests are now logged and ignored rather than raising an exception and aborting the association. 
- Improved handling of DIMSE service messages with empty element values. 
- Added handling for DIMSE service requests when acting as the association Requestor 
Changes#
- The following have been removed as per planned deprecation: - AE.on_c_store(),- AE.on_c_echo(),- AE.on_c_find(),- AE.on_c_get(),- AE.on_c_move(),- AE.on_n_get(),- AE.on_async_ops_window(),- AE.on_sop_class_common_extended(),- AE.on_sop_class_extended(),- AE.on_user_identity(),- AE.on_association_accepted(),- AE.on_association_rejected(),- AE.on_association_released(),- AE.on_association_aborted(),
- _config.DECODE_STORE_DATASETS
- DIMSEServiceProvider.on_send_dimse_message(),- DIMSEServiceProvider.on_receive_dimse_message()
 
- Association.send_c_find(),- Association.send_c_get()and- Association.send_c_move()now require a query_model parameter that is used to set the Affected SOP Class UID value. The parameter should pass a pydicom- pydicom.uid.UIDor UID string. Passing a key that corresponds to a given UID is deprecated and will be removed in v1.5. (#348)
- Event.nameand- Event.descriptionproperties removed, use- Event.event.nameand- Event.event.descriptioninstead.
