Releases: dcm4che/dcm4chee-arc-light
Releases · dcm4che/dcm4chee-arc-light
5.34.3
Enhancements
- Enable sending TQ1 before OBR segment in outgoing HL7 Procedure Status Update OMG^O19 notification message #4876
- Support using SHA-256 Digest Algorithm for checksum of stored objects #4878
- Support HTTP Range Requests for accessing encapsulated videos by WADO-URI or WADO-RS Rendered Instance #4879
- HL7 Order to DICOM MWL : Extend mapping for Scheduled Procedure Step Start Date Time #4882
- Improve logging of RESTful service to create FHIR Imaging Study resource on external FHIR Server #4883
- Include Patient Resource as Contained Resource in created FHIR Imaging Study resource on external FHIR Service #4885
- UI: Add a prevention of editing permission block, if the user doesn't have all permissions nor is a super admin #4887
- Keycloak audit logging: ensure exceptions on assembly of audit message get caught #4888
- Support Attribute Coercion to remove specified attributes by extending Merge Attribute Coercion to specify attributes to be removed by {attributeID}! #4893
- UI Permissions : Provide new permissions for admin role for Action - AE widget #4898
- QIDO-RS: avoid to invoke SQL query to count number of matches two times #4899
- Procedure Update Service - HL7 Order to DICOM MWL : Add logging if no MWLs will be created / updated on empty ScheduledProcedureStepSequence #4903
- Extend SERIES attribute filter to include Performing Physician Identification Sequence (0008,1052) #4906
- Extend request payload to send more information from DICOM dataset for Create ImagingStudy request for Lithuanian National Project FHIR #4908
- UI: Extend svg directive to be able to use svg files #4909
- Avoid to include properties with default values for Storage attributes in transferred JSON representation to/from the UI #4912
- Extend SERIES attribute filter to include Acquisition Date (0008,0022) / Acquisition Time (0008,0032) / Acquisition DateTime (0008,002A) #4913
- Provide Patient Information by FHIR Read for Patient Resource #4914
- Create UPS on Cancellation of previous UPS #4916
- Refactor create FHIR Imaging Study resource on external FHIR Server using Instance Query instead of StudyAttributesWithSOPInstanceRefs #4917
- Refactor create FHIR Imaging Study resource on external FHIR Server moving rendering code from org.dcm4chee.arc.fhir.client.ImagingStudy to org.dcm4chee.arc.fhir.util.FHIRBuilder #4918
- Enable searching by multiple UPS Worklist Labels configured on archive AE levels #4923
- UI Config : Change Trusttore / Keystore types from string to enum in schema.json files #4927
- Improve StorageExporter.tarFiles() exception handling on TAR export failure #4931
- Improve StorageExporter.tarFiles() to update Locations DB records related to one TAR file in one transaction #4932
- UI Config schema.json : Enable providing description values to integer enums #4936
- Calculate Encapsulated Pixel Data Value Total Length on HTTP Range Requests if unknown #4937
- Support HTTP Range Requests for accessing the last N bytes of encapsulated videos using a suffix-byte-range-spec #4938
- UI Configuration : Provide description for String enum values #4939
- Provide Patient Information by FHIR Search for Patient Resource #4674
- UI Monitoring - Storage Verification : Enable Upload CSV to schedule storage verification tasks for Study / Series IUIDs specified in CSV #4868
Bug Fixes
- HL7 ORU sent to archive with SQLServer backend fails #4874
- UI: Monitoring->export: The reschedule dialog is smaller as the content #4875
- Create ImagingStudy at FHIR Server doesn't work in pro #4880
- UI: the dropdowns using StudyWebService are differnly handeled in master and pro, which makes some widgets not work #4881
- UI: Other PIDs sequence, the Patient ID / Issuer of Patient ID fields are disabled / non editable #4884
- Copy operation to Cloud Storage fails with org.jclouds.http.HttpResponseException #4886
- IHE RAD-69 / WADO-WS: Retrieve of DICOM instances with encapsulated Videos fails #4890
- (Re-)Calculation of Series Query Attributes from Series Metadata does not consider Query Retrieve View attributes #4897
- UI: Adding Permission support for the Tab Storage verification #4900
- Editing Study/Series/Patient/etc. in UI causes overflow and doesn't work #4901
- Create ImagingStudy REST API fails with NullPointerException if instances of study are PURGED #4904
- Create ImagingStudy resource fails with NullPointerException if instance.inst_no is null (i.e. no value for Instance Number (00200013) in stored DICOM object) #4905
- Storage Attribute 'Deleter Threshold Max Useable Space' entered in UI is not persisted in LDAP #4911
- ConcurrentModificationException in ExportScheduler.onStore() during concurrent device config reload #4915
- UPS Worklist Label configured on WORKLIST specific AE not effective on UPS queries #4922
- Unsecured version of UI redirects to https://keycloak:8443 #4925
- REST forwarding of Create Patient / Merge Patient fails with NumberFormatException #4928
- UI Config - RESTful Forward Rule : Add missing RS Operation UpdateSeriesAccessControlID in schema.json files #4929
Documentation
- Provide separate documentation page for Merge Attributes Coercion : DICOM Attribute Coercion Parameters and reference it in schema.json files for archive UI and in DICOM CS #4894
- Swagger Docs - Export studies / series specified in CSV REST APIs : Request URL path parameters {studyUIDField} / {seriesUIDField} doesn't match parameter name 'field' #4907
- Swagger : Provide format for REST API query parameters {dateTime} #4926
Dependencies
- Upgrade Wildfly to 39.0.1.Final #4889
- Keycloak Docker Image: upgrade base image to amazoncorretto:21.0.10-al2023 #4892
- ldap docker image: upgrade alpine to 3.23.3 #4910
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.34.3
Docker images
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/dcm4chee-arc-psql | 5.34.3-secure | sha256: 5d724c15911268c8617be59574cbc503364cd3172575ed1fa4e319689a67e7c7 | 5d724c159112 | 1.92GB |
| dcm4che/dcm4chee-arc-psql | 5.34.3-secure-ui | a256:c19575b3b0ecddc1e585b6cfb528087718810628f4e14bd60e3a18577b2dbbba | c19575b3b0ec | 1.92GB |
| dcm4che/dcm4chee-arc-psql | 5.34.3 | sha256:f127f5940971eeaa732a50d51d2f44435e6999639bf334d48382507d01921423 | f127f5940971 | 1.92GB |
requires one of
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/postgres-dcm4chee | 11.22-34 | sha256:c872cd26e88daa4d85c787b255bddcbdf381f6c9eec9d632d44aa2fb1b2d6a85 | c872cd26e88d | 532MB |
| dcm4che/postgres-dcm4chee | 12.22-34 | sha256:d5df293008ead0268502ee39b133923a7b0a199a296c4716935b79143eaff5b6 | d5df293008ea | 592MB |
| dcm4che/postgres-dcm4chee | 13.20-34 | sha256:709584f0831838adcc7e6a0bea0b24b8d87e323873f0116ac66232fc83b681fb | 709584f08318 | 600MB |
| dcm4che/postgres-dcm4chee | 14.17-34 | sha256:9548885ec710e4e723f1830dfd69fdd6745189e762303f605a033423518f20b3 | 9548885ec710 | 604MB |
| dcm4che/postgres-dcm4chee | 15.12-34 | sha256:47e248a2412f59a7fe0ee9a115ec58da91b6fe45669a54202a4c6dd8010a45b2 | 47e248a2412f | 609MB |
| dcm4che/postgres-dcm4chee | 16.8-34 | sha256:4bfefa00798781af60f658bd447bc91cfe2cec5168cce5fc1cdeedeec73c1a22 | 4bfefa007987 | 618MB |
| dcm4che/postgres-dcm4chee | 17.4-34 | sha256:728c3055b894127c661a1645ffd0ccc2ad6461b86e957e245a9cc9bbc9c499e2 | 728c3055b894 | 621MB |
and
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/slapd-dcm4chee | 2.6.10-34.3 | sha256:06bd3cca43c90894f30ad7657539b99842db9047f071aca59255ff19620bb960 | 06bd3cca43c9 | 22.9MB |
Keycloak Docker image
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/keycloak | 25.0.6 | sha256:b0213533d66092422821b37cae32b7845d56fd9f947e4cbb5b467683df8df988 | b0213533d660 | 1.07GB |
5.34.2
Enhancements
- UI Navigation - Update Patient : Allow qualifying issuers fully for partially qualified issuers of patient identifiers in Other Patient IDs Sequence #4086
- Support filter by Series Receive Date Time in UI Navigation making use of Query Parameter "SeriesReceiveDateTime" of RESTful Services to query, count, export, reject, update composite objects #4736
- UI Navigation Patients : Enable user to specify values for Reason for Modification and Source of Previous Value on Edit of Patient Attributes #4742
- Use , as separator for repeating patient telecom info and patient telephone nos. in PID.13, PID.14 #4797
- UI: Adding helper function to slice an array from the right side until it reaches an non empty element #4800
- Remove obsolete HL7 Procedure Status Update MWL field from device / AE extension attributes #4801
- Accept JPEG XL compressed images by default configuration #4805
- Return Patient QR attributes in MWL query #4807
- archive docker image: include bind-utils: dig, host, nslookup, ... #4809
- UI Navigation - Studies : Enable revoking expiration date set to a study #4811
- storage exporter: optionally only export an object if there is not already an object with such Storage Path on the destination storage #4813
- Retry failed attempts to create missing Patient ID more than one time #4814
- Support mapping out timezone offsets in ORC.7.3 / TQ1.7 into MWL attributes Timezone Offset in UTC #4818
- HL7 Order to MWL : Map ORC.13.9 - Enterer's Location - Location Description to Institutional Department Name (0008,1040) #4820
- archive docker image: include iproute package with ip, ss, ... network utilities #4821
- Improve labels / placeholder text for Permanent deletion of rejected instances functionality in UI #4830
- Provide RESTful service to create FHIR Imaging Study resource on external FHIR Server #4837
- Outgoing HL7 PSU Notifications triggered by Study : Prefer Request Attributes Sequence (0040,0275) over Referenced Request Sequence (0040,A370) to populate Placer / Filler fields in ORC / OBR segments #4839
- HL7 Procedure Status Update Template Params defaults : Use just the Study Instance UID (0020,000D) value instead of hashing it #4840
- Enable different value of Result Status in HL7 Procedure Status Update Notifications to differentiate FIRST_OBJECT_OF_STUDY_RECEIVED notification from that of STUDY_RECEIVED #4843
- UI : Navigation Studies: Enable to create FHIR ImagingStudy resource at external FHIR Server for particular Study #4844
- UI: Enable the possibility to use SVG code in the UI, in addition to img and font icons. #4846
- archive docker image: Adjust $HOME environment variable to point to home directory of user wildfly: /opt/wildfly #4848
- Provide Storage Provider for Amazon S3 using AWS SDK for Java 2.x #4849
- Consider Storage Attribute 'On Storage Path Already Exists' also by jclouds Storage Provider #4851
- RESTful services to schedule storage verification tasks for StudyIUIDs / SeriesIUIDs specified in a CSV #4857
- Made CORS Header Access-Control-Allow-Headers and Access-Control-Expose-Headers configurable by system properties or environment variables #4860
- Provide patch script for SQLServer to adjust table columns with data type varbinary(255) to varbinary(MAX) #4862
- UI Configuration : Disable Delete device (X) icon for archive device #4864
- Extend docker image 'dcm4che/rm-wildfly-logs' for daily deletion of failed audit spool files of dcm4chee archive #4871
Bug Fixes
- UI Navigation MWL : Scheduled Station AETs not shown in the MWL record, gets displayed only on mouse hover #4597
- Monitoring - Queues : Remote AET dropdown is empty in query filters #4654
- Merge Patients widget shows invalid values for Issuer of Patient of source patient #4769
- UI Navigation Patients : Edit patient widget Patient Sex dropdown shows 3 digit above values list #4774
- UI: Navigation->Study: Date picker doesn't set year and the date on the date value #4794
- Response Pagination by dicomWeb services may not return all matches #4796
- hl7order2dcm : Requested Procedure Comments mapping from NTE.3 ineffective #4798
- UI: Fixing test units after upgrade #4799
- UI Navigation - Studies : Set Expiration Date - calendar widget is broken #4802
- UI Navigation - Studies / MPPS / MWL tabs : Logical Patient ID (= pk) of patient not displayed in patient's attributes resulting in errors on invoking patient management functions #4808
- UI Navigation : Query filters set by user are not sent in invoked REST API to server #4812
- Dicom to HL7 Procedure Status Update Notification : Populating OBR.4 with Requested Procedure Code Sequence (0032,1064) from Request Attributes Sequence (0040,0275) is not effective #4816
- MWL SCP does not consider specified Timezone Offset From UTC (0008,0201) for matching specified Scheduled Procedure Step Start Time (0040,0003) #4822
- MWL SCP does not return attribute Timezone Offset From UTC (0008,0201) of matching worklist items #4823
- UPS SCP does not return attribute Timezone Offset From UTC (0008,0201) of matching Unified Procedure Steps #4824
- Storage Configuration : Setting values for Deleter Threshold Max Usable Space does not work #4825
- json2props : Fix incorrectly mapped es schema json source for fr props files #4827
- Updated Series Metadata zip files for objects exported from ONLINE CACHE to NEARLINE PERMANENT do not contain Other Storage Sequence (7777,1055) indicating NEARLINE PERMANENT storage ID in it #4833
- Study Retention Policy on C-STORE : Existing expiration date of sibling series gets overwritten by new incoming series with higher expiration date if Study Retention Policy for it has Freeze Expiration Date as True #4834
- Study Retention Policy on C-STORE : Matching Study Retention Policy is ineffective for a new incoming sibling series of a FROZEN study #4835
- Ensure to recreate Series Metadata from DICOM Objects if the verification of the Metadata on purging instance records fails #4836
- Navigation - MWL : 'No filters are set' popup is shown even when query filters are set and sent in invoked REST API #4838
- Placer / Filler values from MWL attributes are not considered in outgoing HL7 Procedure Status Update Notifications if trigger is receive of study associated with MWL #4841
- Incorrect Result Status in HL7 Procedure Status Update Notifications for possible scenario if respective series is not found in archive #4842
- UI: Navigation->Patient Edit, the fields 'Reason for modification' and 'Source of previous values' are also shown on Create Patient modal window #4855
- UI hangs when attempting to delete dcm4chee-arc device #4858
- UI: Navigation: In the Patient level the user can query a Patient Demographics Service but the result is not shown enaywhere #4859
- UI: Navigation->Instance level, instead of the attribute buttons there is a text shown up #4861
- UI: Navigation-> MWL on editing a MWL, the dialog there is a bug while rendering the attributes #4869
Dependencies
- Upgrade Wildfly to 37.0.1.Final #4804
- LDAP docker image: upgrade alpin to 3.22.2 #4806
- Upgrade Apache jclouds to 2.7.0 #4852
- Upgrade Wildfly to 38.0.1.Final #4853
- docker image 'dcm4che/rm-wildfly-logs': upgrade base image to alpine:3.23.2 #4872
- ldap docker image: upgrade alpine to 3.23.2 and slapd to 2.6.10 #4873
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.34.2
Docker images
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/dcm4chee-arc-psql | 5.34.2-secure | sha256:e6ee18a13b778f8a939d733e457c0d725bf0eaad09d2897b192a440fad493e5d | e6ee18a13b77 | 1.91GB |
| dcm4che/dcm4chee-arc-psql | 5.34.2-secure-ui | a256:351a0a6ea9dc8a60f83bb000adcffd2881f81b00070a8d82a13b835186961b82 | 351a0a6ea9dc | 1.91GB |
| dcm4che/dcm4chee-arc-psql | 5.34.2 | sha256:316eba283d3c8538e4c3b954edcdd59572f76aa7271ca6336ddf771703082f8c | 316eba283d3c | 1.91GB |
requires one of
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/postgres-dcm4chee | 11.22-34 | sha256:c872cd26e88daa4d85c787b255bddcbdf381f6c9eec9d632d44aa2fb1b2d6a85 | c872cd26e88d | 532MB |
| dcm4che/postgres-dcm4chee | 12.22-34 | sha256:d5df293008ead0268502ee39b133923a7b0a199a296c4716935b79143eaff5b6 | d5df293008ea | 592MB |
| dcm4che/postgres-dcm4chee | 13.20-34 | sha256:709584f0831838adcc7e6a0bea0b24b8d87e323873f0116ac66232fc83b681fb | 709584f08318 | 600MB |
| dcm4che/postgres-dcm4chee | 14.17-34 | sha256:9548885ec710e4e723f1830dfd69fdd6745189e762303f605a033423518f20b3 | 9548885ec710 | 604MB |
| dcm4che/postgres-dcm4chee | 15.12-34 | sha256:47e248a2412f59a7fe0ee9a115ec58da91b6fe45669a54202a4c6dd8010a45b2 | 47e248a2412f | 609MB |
| dcm4che/postgres-dcm4chee | 16.8-34 | sha256:4bfefa00798781af60f658bd447bc91cfe2cec5168cce5fc1cdeedeec73c1a22 | 4bfefa007987 | 618MB |
| dcm4che/postgres-dcm4chee | 17.4-34 | sha256:728c3055b894127c661a1645ffd0ccc2ad6461b86e957e245a9cc9bbc9c499e2 | 728c3055b894 | 621MB |
and
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/slapd-dcm4chee | 2.6.10-34.2 | sha256:5c04ced61e943af2175c69ec7955c28bbaf676c50b5876c02e1437261cfaeefc | 5c04ced61e94 | 22.9MB |
Keycloak Docker image
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/keycloak | 25.0.6 | sha256:b0213533d66092422821b37cae32b7845d56fd9f947e4cbb5b467683df8df988 | b0213533d660 | 1.07GB |
5.34.1
Enhancements
- UI: Ui optimizations, splitting the UI in to chunks #4739
- IHE RAD-69: Fallback to retrieve requested objects not managed by the archive from external C-MOVE SCP #4752
- Keycloak docker image: enable to initalize keyclock client for archive UI with Pattern for valid Redirect URI without port number #4763
- Provide patient management REST APIs using patient record primary key in path parameter #4768
- Archive Docker Image: delay the start of the archive for a specified amount of time #4770
- UI Navigation Patients : Enable invoking patient management APIs using primary key of patient record returned in Logical Patient ID in patient attributes #4771
- Reload the Configuration from LDAP immediately before updating it by the archive #4772
- UI Permission : Extend UI Action Parameter to include unmerge option #4776
- Limit the number of elements in the IN predicate used for matching SOP Instance UIDs in SQL queries #4778
- Monitoring - Queues - Enable queue management of tasks by StudyInstanceUID query filter #4781
- Update Swagger docs to include latest version and change default server URL to https://dcm4chee-arc:8443/dcm4chee-arc #4783
- Configuration : Update description of Revoke Expiration Date in Study Retention Policy #4784
- UI Permissions : Remove UI Action Param value merge #4788
- UI Navigation - Series : Enable filtering by Accession Number & Issuer of Accession Number Sequence in Request Attributes Sequence #4790
Bug Fixes
- Emission of ATNA Audit message for Retrieve Imaging Document Set [RAD-69] fails with NullPointerException #4761
- UI: After an KeyCloak idle time, getting the chunks is interpreted as redirect which makes the UI stop responding #4765
- Update Series REST API : Removing Request Attributes Sequence (0040,0275) from attributes still keeps the record in series_req table in DB #4766
- Studies stored using STOW-RS stored to archive but client receives 409-Conflict response #4773
- UI Navigation: Edit Series: Study Instance UID (0020,000D) and Scheduled Procedure Step ID (0040,0009) in Item(s) of Request Attributes Sequence (0040,0275) not editable #4777
- UI Navigation - MWL : Scheduled Station AE Title is not shown against the MWL record #4779
- HL7 Schedule Station AET In Order configuration not effective in hl7-order2dcm.xsl #4782
- Fix language files for French #4785
- UI Navigation: "ClearX" does not clear all constraints in UI but does in the constraint model #4786
- XSLT Attribute Coercion on received C-STORE RQ may throw IncompatibleSpecificCharacterSetException #4787
- UI: Size Range widget is behind the overlay layer and the buttons are white on hover #4792
- UI: When there are multiple drop-down widget instances in the page, the 'select' indication is shared #4793
Dependencies
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.34.1
Docker images
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/dcm4chee-arc-psql | 5.34.1 | sha256:3257b886ece0b6e81e7432e19a877f470595e5263025eed9e27eac899da8670c | 3257b886ece0 | 1.85GB |
| dcm4che/dcm4chee-arc-psql | 5.34.01secure-ui | sha256:513ef6cad15b5571d93f30ab1d9194e70e232c0170305740270acae3a53f3890 | 513ef6cad15b | 1.85GB |
| dcm4che/dcm4chee-arc-psql | 5.34.1-secure | sha256:ef6beb9f14c3cc50d47a3f6c99ab7281c1122473f33640baa65083c57821629e | ef6beb9f14c3 | 1.85GB |
requires one of
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/postgres-dcm4chee | 11.22-34 | sha256:c872cd26e88daa4d85c787b255bddcbdf381f6c9eec9d632d44aa2fb1b2d6a85 | c872cd26e88d | 532MB |
| dcm4che/postgres-dcm4chee | 12.22-34 | sha256:d5df293008ead0268502ee39b133923a7b0a199a296c4716935b79143eaff5b6 | d5df293008ea | 592MB |
| dcm4che/postgres-dcm4chee | 13.20-34 | sha256:709584f0831838adcc7e6a0bea0b24b8d87e323873f0116ac66232fc83b681fb | 709584f08318 | 600MB |
| dcm4che/postgres-dcm4chee | 14.17-34 | sha256:9548885ec710e4e723f1830dfd69fdd6745189e762303f605a033423518f20b3 | 9548885ec710 | 604MB |
| dcm4che/postgres-dcm4chee | 15.12-34 | sha256:47e248a2412f59a7fe0ee9a115ec58da91b6fe45669a54202a4c6dd8010a45b2 | 47e248a2412f | 609MB |
| dcm4che/postgres-dcm4chee | 16.8-34 | sha256:4bfefa00798781af60f658bd447bc91cfe2cec5168cce5fc1cdeedeec73c1a22 | 4bfefa007987 | 618MB |
| dcm4che/postgres-dcm4chee | 17.4-34 | sha256:728c3055b894127c661a1645ffd0ccc2ad6461b86e957e245a9cc9bbc9c499e2 | 728c3055b894 | 621MB |
and
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/slapd-dcm4chee | 2.6.8-34.1 | sha256:07e15e7ba3b8aa8bffba91a8a0f8576c29e051ecfadbf9672d56c58383182663 | 07e15e7ba3b8 | 21.9MB |
Keycloak Docker image
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/keycloak | 25.0.6 | sha256:b0213533d66092422821b37cae32b7845d56fd9f947e4cbb5b467683df8df988 | b0213533d660 | 1.07GB |
5.34.0
Enhancements
- Archive UI and Configurations : Enable French language support #4611
- UPS Worklist SCP / UPS-RS Search: Support Matching Key: Human Performer's Name (0040,4037) nested in Scheduled Human Performers Sequence (0040,4034) item #4633
- Prevent duplicate Patient (ID) records by DB Unique Constraint #4636
- Sort list of returned results of QIDO-RS, UPS-RS and proprietary search services according configurable default order #4637
- Extend Series Attribute Filter to include Comments on the Performed Procedure Step attribute #4642
- UI: Making the edit field on the drop-down with the edit function more prominent #4653
- UI Monitoring - Queues : Enable filtering tasks with Study Instance UID filter #4655
- Extend Series / Instance attribute filters and dcmAttributeSetID=AttributeFilters+dcmAttributeSetType=WADO_RS to include Multi-frame Functional Groups module and View specific attributes #4656
- UI Configuration : Remove redundant UI Configuration fields Background URL and Logo URL #4657
- UI: Add css variables to the main background colors #4663
- UI: Enable to edit attribute >Identifier Type Code (0040,0035) of item of Issuer of Patient ID Qualifiers Sequence (0010,0024) #4667
- Make update of aggregated Series Metadata on attributes update configurable #4669
- Audit Message for DICOM C-FIND Query: include text dump of C-Find RQ Identifier Data Set in ParticipantObjectDetail #4672
- Audit Message for REST API Queries : Include additionally HTTPRequest ContextPath and PathInfo in ParticipantObjectQuery #4675
- Store least recent access time of Studies for Deletion in LDAP to avoid costly SQL query #4677
- Enable IAN Notification on receive of first object of Study #4689
- New Attribute Coercion to change the encoding of string values in outgoing DIMSE messages #4691
- UI: Patient Edit: Memorize the mode ( 'simple' vs 'technical') so that an experienced user doesn't need to switch again and again #4698
- Optionally consider also the Patient Name on receive of DICOM objects to determine if they belongs to an already existing Patient in the archive #4701
- Do not invoke superfluous SQL UPDATE statements on change of accession control ID of matching studies or series #4702
- Change Access Control ID assign to Studies or Series over time according configurable Change Access Control ID Rules #4708
- Replace boolean attribute Access Control Series Individually of Store Access Control ID Rule by enum attribute Entity #4709
- Refactor Restful services to update Access Control ID of matching Studies or Series using one bulk update for matching Studies/Series #4710
- Avoid loading DICOM objects form storage on updating exisiting aggregated Series Metadata on attributes update #4713
- Accept Waveform Presentation State and Waveform Acquisition Presentation State by default configuration #4717
- QIDO-RS: Return primary key of Patient DB record in private Attribute (7777,1016) Logical Patient ID #4723
- SQLServer DB create scripts : Enable proper encoding of strings in DB tables' columns #4724
- Oracle DB create scripts : Enable proper encoding of strings in DB tables' columns #4725
- Support Confidentiality Code (0040,1008) by default in mwl2study.xsl / mwl2series.xsl and on manual linking of study with MWL #4730
- Support filter by Series Receive Date Time by Query Parameter "SeriesReceiveDateTime" of RESTful Services to query, count, export, reject, update composite objects #4732
- Enable HL7 Procedure Status Update Notification on receive of first object of Study and on receive of rejection note #4733
- Enable to specify prior values of Access Control ID assigned to Studies or individual Series updated over time according configurable Change Access Control ID Rules #4734
- Apply "Change Access Control ID Delay" and "Change Access Control ID Maximal Delay" specified in "Change Access Control ID Rule" for Series on the receive time of the first object of individual Series #4735
- Avoid failures in attempts to compress images with Bits Allocated < 8 #4738
- Simplify HL7 Procedure Status Update feature triggered by MPPS / Study to have well defined HL7 Procedure Status Update Actions #4740
- RESTful Service to update Patient attributes: enable to pass Reason for Modification and Source of Previous Values by Query Parameters #4741
Bug Fixes
- Re-import Study RS : Duplicate location record created with status ORPHANED on re-importing a study #4353
- Reload does not update Archive Network AE attribute "UPS 2 MWL C-Find SCP" #4632
- Processing of RSClient tasks fail with 'org.apache.http.TruncatedChunkException: Truncated chunk' #4638
- WADO-RS metadata: referenced Metadata Filter by proprietary Query Parameter 'includefield' is not effective for attributes extracted in DB blob fields #4639
- WADO-RS metadata: Load metadata from available Series Metadata, even if Instance records are not (yet) purged #4640
- Share transfer capabilities from an AE handling is missing in outgoing Storage Commitment requests #4641
- Metadata update fails with "Cannot invoke org.dcm4chee.arc.conf.ArchiveAEExtension.getAccessControlIDs() because this.arcAE is null" #4643
- RESTful services using CSV upload fail with "java.lang.NoClassDefFoundError: Failed to link org/apache/commons/csv/ExtendedBufferedReader" #4644
- Rejected Instances fail to get deleted by DeleteRejectedInstancesScheduler #4645
- Link study to MWL rejected source study objects fail to get deleted by More Functions - Delete Permenantly #4646
- Update Series fails with can't parse argument number if Study IUID is missing in request payload #4648
- Calculation of study size by scheduler fails on too many studies to calculate #4652
- MWL to MPPS XSL : Incorrect mapping of ScheduledProcedureStepSequence attributes #4658
- Export to tar storage fails with java.lang.NoClassDefFoundError: org/apache/commons/lang3/SystemProperties #4660
- HL7 Order messages ORM^O01 : Scheduled Procedure Step Description and Scheduled Protocol Code Sequence mapping from OBR.4 ineffective #4661
- Link instances to MWL / Copy or Move instances RS services fails for Series with created Series Meta Data ZIP #4664
- UI: Patient editing triggers patient id change instead. #4666
- PAM-RS Update Patient fails if the Patient ID in the URL differs from that in the payload by attribute >Identifier Type Code (0040,0035) in the item of the Issuer of Patient ID Qualifiers Sequence (0010,0024) #4668
- Verify Access State of objects stored on QStar Tape File System broken #4671
- WADO-RS metadata fails on storage with configured retrieve cache and created Series Metadata #4676
- Instance Availability does not get updated on retrieve by WADO-RS with configured ONLINE retrieve cache #4680
- Instance Availability does not get updated for entities above the retrieve level with configured ONLINE retrieve cache #4681
- Disabling update of aggregated Series Metadata on attributes update causes loss of changes of instance attributes #4686
- Logging on deletion of Studies triggered on overflow of configured threshold of used space shows wrong value of size to be deleted #4687
- STOW Exporter : Exports to STOW-RS destination fails with IllegalStateException #4688
- Deletion from cache storage fails if all locations of study are removed (i.e. with dcmExternalRetrieveAET) #4693
- wado-rs excludeprivate has reversed true/false #4694
- HL7 Merge with Target and Prior Patient ID referring the same Patient cause the Patient get merged with itself #4697
- HL7 Other Patient IDs config set as NONE ineffective #4721
- HL7 Import Report Service sets SOPClassUID by default to Basic Text SR SOP Class for DICOM Encapsulated PDFs / CDAs if report is stored to more than one study #4722
- UI: Switching to another language doesn't work as expected #4731
Dependencies
- Upgrade logstash in docker image to 8.17.2 #4673
- Upgrade Wildfly to 36.0.1.Final #4714
- UI: Upgrade to newest Angular version #4715
- ldap docker image: upgrade alpine to 3.21.3 and slapd to 2.6.8 #4718
Tasks
- Keycloak 26+: GELF logger for sending system log messages to logstash no longer supported! #4651
- docker image 'dcm4che/rm-wildfly-logs' : do not include Alpine Linux package 'quota-tools' #4692
- Do NOT include wildfly-elytron libraries in the EAR #4716
- Update DB SQL scripts for 5.34.0 for databases other than postgres #4719
- Firebird DB : Delete create-fk-index.sql and create-case-insensitive-index.sql #4726
- MariaDB DB : Provide update-5.x-mariadb.sql scripts #4727
- H2 DB : Delete create-case-insensitive-index.sql #4728
- UI Configuration : Remove dcmProperty format referenced in configuration objects #4729
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.34.0
Docker images
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/dcm4chee-arc-psql | 5.34.0 | sha256:1e416fb92c6e3becdd9894adca07102264b96121a9f648787a81efa229965bf7 | 1e416fb92c6e | 1.85GB |
| dcm4che/dcm4chee-arc-psql | 5.34.0-secure-ui | sha256:513ef6cad15b5571d93f30ab1d9194e70e232c0170305740270acae3a53f3890 | 513ef6cad15b | 1.85GB |
| dcm4che/dcm4chee-arc-psql | 5.34.0-secure | sha256:ef6beb9f14c3cc50d47a3f6c99ab7281c1122473f33640baa65083c57821629e | ef6beb9f14c3 | 1.85GB |
requires one of
| REPOSITORY | TAG | DIGEST | IMAGE ID | SIZE |
|---|---|---|---|---|
| dcm4che/postgres-dcm4chee | 11.22-34 | sha256:c872cd26e88daa4d85c787b255bddcbdf381f6c9eec9d632d44aa2fb1b2d6a85 | c872cd26e88d | 532MB |
| dcm4che/postgres-dcm4chee | 12.22-34 | sha256:d5df293008ead0268502ee39b133923a7b0a199a296c4716935b79143eaff5b6 | d5df293008ea | 592MB |
| dcm4che/postgres-dcm4chee | 13.20-34 | sha256:709584f0831838adcc7e6a0bea0b24b8d87e323873f0116ac66232fc83b681fb | 709584f08318 | 600MB |
| dcm4che/postgres-dcm4chee | 14.17-34 | sha256:9548885ec710e4e723f1830dfd69fdd6745189e762303f605a033423518f20b3 | 9548885ec710 | 604MB |
| dc... |
5.33.1
Enhancements
- Accept Label Map Segmentation and Height Map Segmentation by default configuration #4572
- Simplify query for Studies for deletion on cache storage used by multiple permanent storages #4573
- Avoid use of uncommon expression for ENV parameter expansion in docker-entrypoint.sh in archive docker image #4577
- UI Navigation tabs : Unify ID and issuer fields' widgets across navigation tabs for Accession Number with Issuer and Admission ID with Issuer query filters #4580
- Trigger deletion of objects of studies from storage system by exceeding of configured disk usage threshold #4584
- Extend RESTful service to list configured Storage Systems to return configured Deleter Thresholds of Max Usable Space and current used disk space #4585
- HL7 Patient Merge Messages : Optionally allow inverse merging of patient records if clients send duplicated ADT^A40 patient merge messages repeatedly, just reversing the patient identifier values in PID / MRG segments #4589
- docker image 'dcm4che/rm-wildfly-logs' to provide a cron service for daily deletion of Wildfly server log files #4593
- HL7 Procedure Status Update Notifications : Prefer DICOM attributes dataset values over default configured values for populating Accession No. / Requested Proc. ID / Placer No & Seq / Filler No & Seq #4609
- Use org.hibernate.dialect.SQLServerDialect instead of deprecated org.hibernate.dialect.SQLServer2012Dialect #4613
- Enable to masquerade the remote AET in initiated Associations dependend on the remote AET #4616
- Optionaly check if a specified file on the storage file system exists as test for the (local) accessibility of the mounted (remote) file system #4619
- Optionally feed MWL C-FIND SCP by the content of the UPS DB table, intiated by dicomWeb Worklist Service (UPS-RS) #4620
- PostgresSQL default join_collapse_limit=8 causes sub-optimal performance of queries with many joins #4621
- Keycloak docker image: Provide customized login theme j4care derived from build-in login theme keycloak.v2 #4623
- Keycloak docker image; Avoid use of deprecated Envirionment Variables for setup of the initial admin user #4624
- Prevent Studies from staying in status "deletion in progress" on incomplete study deletion #4625
- HL7 Service: Suppress Patient Updates by HL7 Messages of specified types #4626
Bug Fixes
- UI: Monitoring / Storage commitments -> Flush Before fails with 400 Bad Request #4261
- HL7Exception thrown on receive of ORU messages if HL7 ORU Actions is not configured #4575
- Forwarding of large HL7 messages fails with 'java.io.InvalidClassException: filter status: REJECTED' #4576
- Patient attributes contain ~ in Patient Telecom Information, Patient Telephone numbers on receive of HL7 messages #4578
- UI Monitoring - Storage Commitment : Updated before is forced to be set on using Flush before #4582
- UI: Navigation - Studies : Permanent Delete fails with 400 Bad Request if rejected before date field is set #4583
- QIDO-RS Search for Studies : Multiple records returned if PatientID used in query filter, wherein patient record has same PatientID value on root dataset as well as in items of Other Patient IDs Sequence, but has differing issuers #4587
- Security Alert audits triggered by Software Configuration changes contain additional unchanged Coercions / Storage Descriptor config changes info #4601
- HL7 Orders to MWL - General Order Message : ORC.7.4 mapping to Scheduled Procedure Step Start Date Time in XSL broken #4612
- Search / Count MWLs using REST : MWLWorklistLabel configuration on (tenant specific) WORKLIST AE not effective #4618
- Add missing dependencies in jboss modules for org.apache.commons.csv and org.apache.commons.compress #4627
- Outgoing HL7 notification fails for empty Patient Address value sent in incoming PID.11 just with component limiters #4630
Dependencies
- Upgrade OAuth2 Proxy docker image to v7.7.1 #4581
- Upgrade Wildfly to 34.0.0.Final #4590
- Archive Docker Image: use amazoncorretto:21.0.5-al2023 instead of eclipse-temurin:21.0.4_7-jdk as base image #4598
- Keycloak docker image: Upgrade to Keycloak.X 26.0.6 #4605
- Upgrade Keycloak Admin Client in archive docker image to 25.0.6 #4606
- Keycloak Docker Image: use amazoncorretto:21.0.5-al2023 instead of eclipse-temurin:21.0.4_7-jdk as base image #4607
- Upgrade Apache jclouds to 2.6.0 #4614
- Upgrade Postgres DB docker image to 17.1 #4617
Tasks
- UI Configuration : Remove unused UI Device URL configs, related code from JSON / LDAP serialization #4574
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.33.1
Remarks on upgrading from previous version
- #4621 will only get applied on new initialized DB instances. On existing one you will have to edit mapped out
/var/lib/postgresql/data/postgresql.confto#from_collapse_limit = 8 #join_collapse_limit = 8manually.from_collapse_limit = 16 join_collapse_limit = 16 - #4623 will only get applied on new initialized Keycloak instances. On existing one you have to manually select the
j4caretheme on upgrade from previous version using the Keycloak admin console:

5.33.0
Enhancements
- Unify RESTful API for services involving operations on matching entities #2077
- Audit services code cleanup #3262
- archive docker image: Rotate Wildfly Logs (audit.log, audit-log.log and server.log) files periodically #4183
- QIDO RS : Reject broad queries if query count exceeds configured Query Max Number of Results #4487
- Replace 400 - Bad Request with 413 - Request entity too large error response code for matching RS services #4488
- Merge MWL coercion - PatientID, PatientIDOnly and PatientIDAccessionNumber matching keys : Consider issuer values if present in DICOM dataset in patient identifier matching #4489
- Nullify Pixel Data or Retrieve as Received coercions : Add log info message if these coercions are applied on retrieving DICOM study #4494
- Store Service - Study Retention Policy : Add log info message if matching policy is applied on study / series #4496
- Pass Storage Commitment/Verification for objects only external retrievable #4500
- UI: Person Name widget: Add the possibility to search by ideograpich or phonetic #4502
- Retry failed attempts to permanently delete a study caused by javax.persistence.OptimisticLockException #4505
- UI: Navigation: Improve the way how to show the patient identifier #4506
- UI: Navigation filter: move patient id filter in to issuer of patient widget #4507
- Enable to connect to read only databases for archive instances only providing query/retrieve services #4510
- Fallback to device level for auditHL7MsgLimit usage if no hl7 application found for MSH.5 / MSH.6 on spooling incoming / outgoing HL7 messages #4514
- Provide Query Retrieve View 'iocmDisabled' for not hiding any of the rejected instances and associate it with Archive AE 'AS_RECEIVED' by the default configuration #4515
- Restrict DB query for locations on Verification of Access State by Storage ID to make use of existing index (storage_id, status) #4516
- Identify Patients only by Patient IDs with trusted Issuer of Patient IDs on MPPS N-CREATE requests to archive #4517
- Optionally ignore received objects belonging to a different Series than previous received objects with equal SOP Instance UID #4518
- Provide coercion to merge MPPS attributes from matching MWL items #4520
- Archive Docker image: Make Pattern for formatter PATTERN for system log messages to /opt/wildfly/standalone/log/server.log* configurable by Environment Variable WILDFLY_SERVER_LOG_PATTERN #4521
- UI: uprgrade keycloak.js to the latest one as the current used version doesn't work with KeyCloak verison 25.0 #4525
- Support multiple IPC segments under one ORC-TQ1-OBR group to create multiple MWLs from single HL7 order message #4526
- Support Patient Create DateTime query filter in QIDO-RS Search / Count patients REST services and in UI - Navigation - Patients tab #4528
- Access Control on Series Level #4532
- Avoid redundant emission of deletion tasks audit triggered by purge task scheduler #4537
- UI: Navigation: Enable "bulk uplad" of directories #4541
- UI: Navigation: Create Patient widget, add a simplified form #4542
- RESTful service to update Instance Attributes #4545
- Extend set of DICOM response status error codes for Audit Messages #4546
- Retry failed attempt to update patient caused by javax.persistence.OptimisticLockException #4551
- UI: Navigation: Change the Patient identifier Widget to look like the Patient Name widget #4554
- Extend Study participant object details in audits to include StudyDescription, SeriesDescription and Modality #4555
- Restful services to update Access Control ID of one specified or multiple matching Series #4559
- UI Series List: update Access Control ID of Series #4560
- UI : Provide function to Update Access Control ID of matching Series #4561
- Normalize validation checks for Update Study/Series/Instance REST APIs #4563
- Accept Waveform Annotation SR by default configuration #4565
- Archive Docker Image: Pre-confgure logger category "org.wildfly.security.http.oidc" for logging Wildfly OIDC Client #4569
- Purge legacy external archive patient management REST services #4570
Bug Fixes
- UI Navigation Tabs : Date range picker - Single Date always sets to current date independent of selected value in calendar #4347
- UI Configuration : Unable to create RESTful Forward Rule config #4485
- Unknown PatientID - - missing in Studies stored triggered DICOM Instances Transferred error audit - for instances stored to archive without any PatientID #4486
- UI Navigation Patients : Removing Other Patient IDs Sequence (0010,1002) from Edit Patient popup still sends it in the request payload #4491
- Studies stays in status deletion in progress on failures to delete them permanently #4504
- Handle closure of instances of org.jboss.resteasy.client.jaxrs.ResteasyClient #4511
- UI: The MWL Table is not rendered #4519
- UI: Merge dialog-> Instead of the Patient ID there is the stringified Object visible #4522
- MWL Scheduler triggered delete MWL throws OptimisticLockException #4523
- UI: Merge process is failing with no information when instead of a patient a study is selected for patient merge #4524
- Share transfer capabilities from an AE handling is missing in forwarded MPPS requests #4529
- UI: When multiple patient IDs exist and the patient identification texts are very short, the spacing between ID groups is too small. #4530
- Concurrent invocation of Move Study to Patient RS service fails with OptimisticLockException #4531
- WADO Exporter on secured archive fail with HTTP 401 Unauthorized caused by expired token #4535
- HL7 Order to MWL - ORM^O01 : Modality and Scheduled Procedure Step ID values not transformed correctly by XSL #4538
- Instance level query fails with IllegalArgumentException #4539
- Failure to verify patient using PDQ Service fails to update patient status to VERIFICATION_FAILED #4544
- Rectify incorrectly formatted examples of issuer of patient identifier / properties format indicated in configuration descriptions #4547
- Delete patient triggered by REST API emits audit twice #4549
- Change patient identifier triggered by REST API does not emit audit for previous patient identifier deletion #4550
- Incorrectly formatted Request URI with duplicated query filters in task processing triggered audits #4552
- HL7 PSU notifications fail on MPPS trigger N_SET requests received before HL7 PSU Task for N_CREATE requests are processed #4553
- UI Navigation - Upload files : The widget does not allow selecting files, instead provides option to select a directory #4556
- UI Navigation : Edit / Add attributes not available on uploading files #4557
- UI Navigation - Studies : Update Access Control ID to selections does not work #4564
- UI:Navigation-> Patient identifier widget: If you add patient id without editing the strings in the widget, it is not sending the string as a filter #4571
Dependencies
- Upgrade Wildfly to 33.0.2.Final #4495
- Keycloak docker image: Upgrade to Keycloak.X 25.0.5 #4497
- Upgrade Keycloak Admin Client in archive docker image to 25.0.5 #4498
- Upgrade Postgres DB docker image to 16.4 #4533
- Upgrade logstash in docker image to 8.15.1 #4562
- ldap docker image: upgrade alpine to 3.20.3 and slapd to 2.6.7 #4567
- Upgrade OAuth2 Proxy docker image to v7.6.0 #4568
Task
- Update DB SQL scripts for 5.33.0 for databases other than postgres #4534
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.33.0
5.32.0
Enhancements
- UI: STOW-RS Enable to upload JPEG's, Videos, PDF on other levels than Study and MWL #2171
- Enable to configure different proxy port for Wildfly Aministration Console for navigation from Archive Web UI #4185
- UI: Navigation Study: Replace checkbox by dropdown to filter for Studies containing Series of any or all of specified Modalities #4256
- UI Navigation: support upload of JPEG 2000 Part 15 (HTJ2K) and JPEG 2000 Part 1 images #4307
- Storage Verification of matching entities REST services : Remove duplicate logging of request #4327
- UI Navigation Studies / Series : Show error message sent inside error key of response payload #4328
- UI Navigation Studies / Series : Unify export matching dialogs #4330
- Support PID.15 - Patient's Primary Language in incoming / outgoing HL7 messages #4331
- Assign Service Account Role ${SUPER_USER_ROLE} to Client ${RS_CLIENT_ID} by initial Keycloak configuration #4333
- Schedule IAN of matching studies / series to external IAN SCP RS services : Persist study / series instance UIDs in IAN task #4334
- Support Attribute Coercion to merge date-time attributes with date-time values a specified period of time before the present #4339
- Change default for Filter by Issuer of Patient ID even if no matching key is specified for Patient ID from false to true #4341
- Replace Archive Device configuration attribute "Trusted Issuer of Patient ID Pattern" by "Trusted Patient ID Pattern(s)" #4344
- UI Navigation Studies / Series - Mark (all series of) study / series as Requested or Unscheduled : Return UIDs of updated entities in displayed message #4348
- Update Request Attributes of (all Series of Study / Series) RS : Schedule metadata update for series / study #4349
- UI Navigation Studies - Recreate DB record : Extend widget to include readPixelData query filter #4351
- UI Navigation Workitems : Enable to download UPS Workitems as CSV #4354
- UPS RS services : Validate query filter upsScheduledTime to be a valid value of ParseDateTime class #4359
- UPS services : Search for subscribers and create UP Events only for non-template UPS records #4362
- UI Navigation -> UWL : Enable to request cancel of individual UPS Workitems optionally with Request UPS Cancel - Action Information #4363
- UI Navigation Patients : Enable to update demographics of a patient using a PDQ Service #4366
- Update patient demographics by HL7 PDQ Service : Adjust other patient IDs in patient attributes based on HL7 Other Patient IDs configuration #4367
- Update patient demographics - adjust issuer of patient : Improve ambiguous log info message indicating also change of patient identifiers #4369
- Web Service Class PROMETHEUS #4372
- Improve log message on failure to store objects to destination not supporting certain SOP Classes #4373
- UI Navigation - UPS : Make field Procedure Step State = SCHEDULED as read only on Create new UPS Workitem #4377
- Patient Demographics Query (PDQ) Service audit : Include exceptions caught on querying PDQ services to be audited with Outcome Indicator as Minor Failures (= 4) #4384
- UI Monitoring - Storage Verification / Compare : Enable Cancel task only for SCHEDULED / SCHEDULED_FOR_RETRY / IN_PROCESS tasks #4385
- UI Monitoring - Queues / Export / Retrieve : Enable Cancel task also for SCHEDULED_FOR_RETRY tasks #4386
- Queued Export of single study / series : Persist corresponding series_iuid / sop_iuid in task table as * instead of null #4388
- Archive Docker Image: Adjust configured Hibernate log category for writing values bound to the JDBC parameters to org.hibernate.orm.jdbc.bind #4391
- WADO-RS retrieve Bulkdata: include parameter "transfer-syntax" also for Default Transfer Syntax of Compressed Bulkdata Media Types in "Content-Type" header field in response #4399
- Replace null by "*" for field externalRetrieveAET of entity Instance and Series and change corresponding Nullable column ext_retrieve_aet to NOT NULL #4402
- Minimize affected rows by SQL update statements for updating single columns with an enumerated set of values #4404
- UI: Make possible to use keycloak attribute to save the preferred language for the user #4416
- Enable realm-management - manage-users role by default to admin / user users #4417
- UI Monitoring - Upload CSV : Add validation to ensure minimum value of Study / Series UID Fields is 1 #4419
- Update DB SQL scripts for 5.32.0 for databases other than postgres #4422
- LDAP docker image: Set connectTimeout and readTimeout for outgoing HTTP requests for HTTP connections initated by scripts add-http(s)-conn #4427
- Search {entity} RS services : Return Vary response header if 406 - Not Acceptable is thrown #4428
- UPS RS (POST / PUT) services : Replace 406 - Not Acceptable with 415 - Unsupported Media Type if clients send invalid Content-type request header #4429
- Provide Keycloak Docker images based on azul/zulu-openjdk and azul/prime alternatively to images based on eclipse-temurin #4431
- Remove admin / user as default Accepted User Role(s) from archive's default Application Entities #4433
- UI Monitoring - Storage Verification : Improve tab #4434
- Support Military Rank / Confidentiality Code in HL7 order messages #4437
- Extend default Study attribute filter config to include Reason For Performed Procedure Code Sequence (0040,1012) #4438
- Log outgoing HL7 Messages on filesystem #4440
- Studies with orphaned instances (= no location records) can't be deleted from archive #4441
- Extend HL7 Procedure Status Update notifications to notify using OMI HL7 messages #4445
- Simplify Study Retention Policy sample configurations #4448
- Improve and normalize Rule Priority descriptions in applicable language schema json file #4450
- Archive Docker Image: Make mutual TLS authentication for HTTPS configurable by environment variable NEED_CLIENT_AUTH #4457
- Store Service : Improve error message returned for A777H error code #4459
- Optimize permanent deletion of Studies with objects not shared copied/moved from/to other Studies #4460
- MWL-RS Create / Update MWL : Use MWL Worklist Label config on archive AE as fall back, if Worklist Label (0074,1202) is missing or has no value in request payload - before falling back to * #4461
- Reject concurrent requests to permanently delete a study #4462
- Prevent storage of objects of Study which deletion is in progress #4463
- Consider configured Access Control ID(s) for particular Archive Network AE by RESTful Service to search for patients #4466
- Share Transfer Capabilities from other Network AE of the same Archive Device #4470
- Enable to configure URL of Wildfly Aministration Console for navigation from Archive Web UI #4473
- keycloak docker image: Add Environment Variable WILDFLY_CONSOLE_REDIRECT_URL to configure Valid Redirect URI pattern for Keycloak client for securing the Wildfly Management Console #4474
- Send Imaging Result [RAD-128] / Notify of Imaging Results [RAD-132] : Enable support for OBR.33 and OBR.34 #4476
- keycloak docker image: adjust files in /opt/keycloak/lib/quarkus/ from /docker-entrypoint.d/quarkus/ on first start of container with different keycloak version #4477
- Improve Purge(d) Instance Records description #4479
- logstash-dcm4chee docker : Provide JSON properties for participant object details of QIDO / CFind queries' audits #4481
- Rename ParticipantObjectIDTypeCode for Query audits triggered by REST #4482
Bug Fixes
- UI monitoring page : Only Associations / Compare / Storage Systems tabs load up, other tabs fail to load #4205
- QIDO-RS Study Query : Updated series level Modality values not reflected in study level ModalitiesInStudy tag #4320
- Schedule Storage Commitment of matching Studies from external Storage Commitment SCP REST service : Misleading Log INFO message about Suppress processing of already deleted Task after task creation and before its subsequent processing #4326
- UI Navigation Series tab : Incorrect filters Patient Verification Status / All of Modalities in Study displayed in popups of Export / Reject matching series #4329
- UI Navigation Series - Apply Retention Policy to matching series : Rectify message displayed to user #4336
- Archive version 5.30.0 : Rectify error on importing update-ui-config.ldif #4337
- Other Patient IDs of existing Patient does not get supplemented with additional Patient IDs in received DICOM object or HL7 message #4342
- Update Request attributes of Study / Series RS : Mark study / Series as Unscheduled adds empty Request Attributes Sequence (0040,0275) to the attributes dataset #4350
- Re-import Study RS : Duplicate location record created with status ORPHANED on re-importing a study #4353
- Attempt to export study which objects are no longer locally accessible fails with uninformative java.lang.IndexOutOfBoundsException #4357
- UI Navigation Patients : Edit Patient incorrectly allows redundant editing of Dcm4chee archive specific proprietary attributes Patient Create Date Time & Patient Update Date Time #4358
- Update UPS - UPS Assigned event does not contain ScheduledStationNameCodeSequence on updating both ScheduledHumanPerformersSequence and ScheduledStationNameCodeSequence #4364
- Update UPS : UPS Assigned events conditionally contain ScheduledStationNameCodeSequence / ScheduledHumanPerformersSequence only if these are explicitly updated by the client #4365
- Patient verification scheduler triggered update patient demographics fails to update status to NOT FOUND for patient records not found at Patient Demographics Supplier #4368
- Patient verification scheduler triggered update patient demographics - adjust issuer of patient : Invokes changePatientID service for identical patient identifiers #4370
- Update patient demographics - adjust issuer of patient : Patient ...
5.31.2
Enhancements
- UI: Import a single JPEG 2000 (JP2) image on the local filesystem to a study in the archive using STOW-RS #2091
- UI Navigation - MWL : Upload Bulkdata Files on MWL #4173
- Emit Audit Message "Data Export" on Verification of the Access State of objects stored on QStar Tape File System for each Series #4271
- Accept Objects with sequences which actual length exceeds its encoded length #4275
- Refactor claiming of storage verification, delayed compression, update of series metadata and purging of instance records #4277
- Accept HTJ2K compressed images by default configuration #4280
- Accept Confocal Microscopy (Tiled Pyramidal) Image by default configuration #4281
- Avoid rDNS lookup for local host by using configured Hostname attribute of DICOM and HL7 Network Connections instead #4291
- Accept HTJ2K compressed images in STOW-RS metadata + bulkdata requests #4296
- Do not validate storage of emulated Rejection Notes against configured Store Permission Service #4299
- Provide Archive Docker images based on amazoncorretto alternatively to images based on eclipse-temurin #4305
- Provide Keycloak Docker image based on amazoncorretto alternatively to image based on eclipse-temurin #4308
- Archive Docker image: replace 'gosu wildfly' by 'chroot --userspec=wildfly:wildfly /' #4311
- Keycloak Docker image: replace 'gosu keycloak' by 'chroot --userspec=keycloak:keycloak /' #4312
- UI Configuration : Limit Application Entity title value to 16 characters #4313
- UI Navigation - Patients : Show complete target patient identifier in merge patient popup #4314
- Keycloak Docker Image: Enable support of 'Client Credentials Grant' for Keycloak clients 'elastic' and 'kibana' by default configuration #4317
- Separate user role required for authentification by OIDC from user roles associated with permissions #4318
Bug Fixes
- UI Navigation : Upload DICOM / Bulkdata files dialog window broken #4174
- Accept Conflicting Patient ID =YES may cause duplicate Patient IDs record associated to different Patients in the DB #4272
- Copy study from one patient to the other fails #4273
- Delete Study Permanently fails for a study copied over into a target patient #4274
- UI Navigation Upload Image Bulkdata : Incorrect Conversion Type (0008,0064) value, JP2 files attribute values handling missing #4276
- Ensure that the Temporal annotation is specified for all persistent fields of type java.util.Date of all entity classes #4278
- Secured archive RS requests audits no longer contain user name in Active Participant's UserID #4288
- Typo in Outcome message of Exporter to add Predecessor Document Sequence to Encapsulated PDF Documents received from Visus JiveX #4289
- Matching of Scheduled Station for HL7 Order Rules by SendingHostname never worked #4290
- UI: Angular Material picker is not compatible with the design of the UI after Angular update, replace it with a custom date picker #4292
- UI: Configuration: Cannot configure UPS Attribute Filter #4293
- "retrieve-as-received" Attribute Coercion not effective for WADO-RS Metadata retrieval as configured for Archive AE: AS_RECEIVED by default #4294
- Rectify Audit Event ID for QStar audits from DICOM Instances Transferred to Export #4295
- Incorrect active participants in HL7 ORU triggered DICOM Instances Transferred audit #4297
- UI Navigation Patients - Supplement Issuer : Empty Info message when no matching patient identifiers found for supplementing issuer #4298
- UI Navigation Series tab : Incorrect filters Patient Verification Status / All of Modalities in Study displayed in popups of Send IAN / Storage Commitment request of matching series to peers #4300
- UI Navigation Series tab : More Functions incorrectly contains Reject matching studies #4301
- Move Instances to Study (moving on patient level) : Other Patient IDs from source patient attributes carried over into target patient attributes causing creation of multiple corrupted target patient records #4302
- UI Navigation : Restore Study function in IOCM views incorrectly rejects study with code 113039^DCM #4309
Dependencies
- ldap docker image: upgrade alpine to 3.18.4 #4282
- Upgrade Wildfly to 30.0.1.Final #4284
- Keycloak docker image: Upgrade to Keycloak.X 23.0.3 #4285
- Upgrade Keycloak Admin Client in archive docker image to 23.0.3 #4286
- Upgrade commons-compress-1.23.0.jar to commons-compress-1.25.0.jar #4310
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.31.2
5.31.1
Enhancements
- Unify RESTful API for Patient Management services for own and external archives #2074
- Replace Wildfly Keycloak Adapter by Wildfly Electron OIDC Client #3678
- UI Monitoring/Storage Systems: Change Status of Locations on particular Storage System #4145
- index DB column task.exporter_id #4203
- Extend RESTful services to list batches which are scheduled for retry after failure #4208 L
- UI Navigation Series : Enable to set / change expired date to a series #4215
- Archive Docker Image: Make use of cached connection manager configurable by Environment Variable WILDFLY_PACSDS_USE_CCM #4216
- Convert subquery for matching Patient ID into join to avoid performance issue on PostgreSQL #4219
- Patient attributes created / updated on HL7 messages : Support Patient's Telephone Numbers (0010,2154) and Patient's Telecom Information (0010,2155) #4220
- Remove unnecessary distinct from named JPA Queries with left join fetch of patient_id #4221
- Log also successful Verification of Access State of objects stored on QStar Tape File System in server.log #4222
- no need to patch SQL create script generated by Hibernate for MySQL 8.1.x #4223
- Provide dedicated binary distribution package for MariaDB #4224
- HL7 orders to MWL transformation : Enable supporting Admitting Date (0038,0020) / Admitting Time (0038,0021) from PV1.44 #4234
- Update customized Keycloak login theme to align with Keycloak 22.0.3 #4237
- Exporter to add Predecessor Document Sequence to Encapsulated PDF Documents received from Visus JiveX #4238
- RESTful service to verify DNS lookup #4242
- Emit Audit Message on Verification of the Access State of objects stored on QStar Tape File System #4244
- Storage Verification: if there are several objects of an instance, prefer validation on ONLINE storage over validation on NEARLINE storage #4247
- Reject query/retrieve requests with wildcard values for unique keys for levels above the query/retrieve level #4252
- Support condition if DA value is current date #4257
- UI: Monitoring / Storage Commitments: sort list by descending Updated time (stgcmt_result.updated_time) #4262
- Archive Docker Image: pre-configure logger category org.dcm4chee.arc.storage with INFO level #4264
- Minimize number of SQL statements executed on processing N-EVENT-REPORT-RQ received from Storage Commitment SCP #4268
- Improve description of Storage attribute Check Mount File Path #4269
Bug Fixes
- Export RS - connection to remote AE failures : Missing exception info in BeginTransferringDICOMInstances audits #4192
- Reject RS services : Rectify error response triggered on unknown rejection note #4196
- Link instances to MWL / Copy or Move instances RS services : Handling of unknown rejection note code error response is missing #4197
- Retrieve of objects with Deflated Explicit VR Little Endian Tranfersyntax fails with: "java.lang.IllegalStateException: Entered by wrong thread" #4202
- Update Study / Series Expiration Date RS services : Non-existent study / series exception not handled correctly #4210
- UI Navigation Studies / Series : Update matching studies / series functions does not send the navigation query filters in request #4211
- Patient IDs generated and supplemented by the Archive on receive of objects without Patient IDs are NOT inserted in DB table patient_id #4212
- Sqlserver : Incorrect case insensitive index on study.study_desc #4213
- create-firebird.sql broken, missing patient_fk in table patient_id #4214
- DB2 backend : Storing DICOM objects to archive fails #4217
- Failed concurrent deletion of data from storage caches by different archive nodes results in stale study.storage_ids #4226
- WADO URI audit : Enable spooling / emission of audit only if retrieve was successful and contains SOP Instance in retrieve context #4227
- HL7 Outgoing Notifications : CNN - Composite ID Number and Name Simplified is not handled correctly #4231
- Receive of HL7 ORU^R01 message with multiple Patient IDs may cause insert of Patient ID DB records with not trusted Issuer #4232
- Receive of HL7 message with multiple Patient IDs for existing Patient may cause insert of Patient ID DB records with not trusted Issuer #4233
- PAM-RS may fail to Update Patient with Internal Server Error caused by: org.dcm4che3.data.IncompatibleSpecificCharacterSetException #4239
- Rectify success response definition for Create Patient RS service in swagger #4240
- Rectify multiple issues in Change Status of Scheduled Procedure Step RS Service #4241
- Verification of Access State of objects stored on QStar Tape File System fails #4245
- Storage Commitment of Objects packed in TARs fails with Storage Verification Policy: OBJECT_EXISTS or OBJECT_SIZE #4246
- External Retrieve AET of Study/Series should be nullified on receive of another object of that Study/Series #4248
- Size of Study/Series is not marked for recalculation on receive of another object of that Study/Series #4249
- UI: Ui Config: Adding a new language not working #4253
- SCHEDULED FOR RETRY status missing in Monitoring page - Queues tab - Status dropdown #4254
- Spoolfiles blk########.tmp created on retrieve of objects containing non-pixel bulkdata are not getting deleted #4259
- Retry of Storage Commitment Tasks fails with ERROR: duplicate key value violates unique constraint #4260
- Storage Commitment SCU service does not send N-EVENT-REPORT RSP on failure to process N-EVENT-REPORT RQ #4263
- PAM-RS UpdatePatient creates duplicate patient record if PatientID is updated and target patient exists #4265
- UI: Monitoring->Queues: Triggering 'Delete all matching studies' shows undefined when nothing was deleted #4266
- Accept Conflicting Patient ID =YES may cause duplicate Patient IDs record associated to different Patients in the DB #4272
Dependencies
- Replace Keycloak Admin Client by Keycloak Admin Client for Jakarta EE #3873
- Upgrade Wildfly to 29.0.1.Final / Jakarta EE 10 #3874
- Keycloak docker image: Upgrade to Keycloak.X 22.0.1 #4193
- Upgrade Keycloak Admin Client in archive docker image to 22.0.4 #4194
- Upgrade included JDBC Drivers #4200
- Upgrade maven-install-plugin to 3.1.1 #4228
- Keycloak docker image: Upgrade to Keycloak.X 22.0.4 #4236
Binary Distribution Packages
https://sourceforge.net/projects/dcm4che/files/dcm4chee-arc-light5/5.31.1
5.31.0
Enhancements
- UI Configuration : Enable supporting integer arrays for configuration fields #4039
- UI Configuration : Allow descriptions for enums #4040
- Support multiple Patient IDs for one Patient #4053
- UI:Navigation: Support passin query parameter to the URL #4066
- UI Navigation: Show all Patient IDs for listed Patients #4067
- Update DB SQL scripts for 5.31.0 for databases other than postgres #4068
- Study Size audit : Extend emitted audit to contain study / patient information #4085
- HL7 messages transformation : Support Identifier Type Code in PID.3.5 mapping it to Type of Patient ID (0010,0022) #4087
- UI Navigation tabs : Support Type of Patient ID (0010, 0022) in patient identifier displayed in table list #4088
- Log exporter descriptor info on failures triggered by create / update of export tasks #4090
- UI Navigation tabs : Add description tooltips for Patient Verification Status dropdown values #4091
- UI Navigation tabs : Add description tooltips for Expiration State dropdown values #4095
- Support connectTimeout and readTimeout in outgoing HTTP requests triggered by archive #4097
- RESTful Forward Rule : Replace TLSAllowAnyHostName and TLSDisableTrustManager fields with those from target web application #4098
- Set dcmKeycloakServer in dcm4chee-archive schema to OBSOLETE #4101
- Update Response Timeout description in Network Connection Extension to reflect about its usage also in HL7 / HTTP Protocols #4102
- Optionally disable copying of objects on retrieve to a configured retrieve cache storage for specified retrieve destinations or for objects which corresponding Instance Records were already purged from the DB #4103
- UI Navigation : Adjust patient identifier in the displayed lists of patient records shown on archive UI #4105
- UI Navigation Studies / Series : Change Body Part Examined query filter from free value text to editable-multi-select dropdown allowing user defined and defined body part codes acc. to DICOM PS3.16 #4106
- UI Navigation Studies / Series : Change Storage Clustered / Storage Exported query filters from checkbox to selectable dropdown #4107
- UI Navigation Studies / Series / Compare : Change Sending / Receiving AET of Series query filters from free value text to editable-multi-select dropdown allowing user defined and selecting configured AETs #4110
- Extract xroad module from ear into standalone wildfly module #4111
- Use configured / invoked Other HL7 Application Name & Facility values of sending HL7 application in MSH.3 / MSH.4 fields of outgoing HL7 messages #4113
- RESTful service to restore purged Instance records of a particular Study or Series #4116
- Update existing Workitem RS : Add Issuer of Patient ID (0010,0021) & Issuer of Patient ID Qualifiers Sequence (0010,0024) in IOD for N-SET #4118
- Accept Photoacoustic Image and General 32-bit ECG Waveform Storage SOP Class by default configuration #4120
- Enable scheduling metadata update for series (of study) when associated MWL is created / updated #4121
- UPS-RS: Log reason for error responses in server.log with INFO level #4122
- Restrict query for Studies to delete from the Storage System, if the usable space fall below configured Usable Space, to a configurable range of its last access time #4125
- Support other Location Status of new received objects and objects copied to another Storage than OK #4127
- Replace Storage properties by Storage Attributes #4128
- Verify Access State of objects stored on QStar Tape File System #4131
- LOG.info on successful update of access control ID to single / matching studies #4132
- Prevent/Defer creation/update of Series Metadata with Locations with Status != OK #4136
- UI: Navigation Study/Series/MWL: populate drop down for Institution Name filter from UI Configuration attribute #4139
- Extend RESTful services to list/count/cancel/delete tasks which are scheduled for retry after failure #4141
- RESTful service to Change Status of Locations on Storage System #4144
- Identify Patients only by Patient IDs with trusted Issuer of Patient IDs #4146
- Provide NOOP Exporter (URI: noop:{dummy}) to enable to trigger Storage Commitment to external Archive without previous export #4148
- Improve placeholder descriptions for Modality / All of Modalities in Study filters #4149
- UI Navigation filters : Enable placeholder descriptions for editable-multi-select query filters #4150
- Update MWL RS : Improve messages returned back on error responses, provide error responses for NonUniquePatientException, PatientMergedException, PatientMismatchException #4151
- Add LOG.info on successful patient update #4153
- UI Navigation Patients tab - Merged patients : Disable functional icons which can result in PatientMergedException errors #4154
- UI Navigation Patients : Enable Download as CSV icon for patients with Number of Patient Related Studies greater than 0 #4155
- UI:Config: Add the possibility to add Spanish language #4156
- Merge MWL Coercion: copy Institution Name (0008,0080) from matching MWL item to coerced object #4158
- Link Instances to MWL Entry RS : Use MWL Item's Institution Name in linked instances #4159
- PAM-RS: Identify created/updated/merged Patients only by Patient IDs with trusted Issuer of Patient IDs #4160
- Support multiple Patient IDs in path parameter of RESTful services #4161
- UI: Concatenate Other Patient IDs to primary Patient ID passed by Path Parameter invoking RESTful services #4162
- UI Monitoring tabs : Extend Status dropdown filter to include SCHEDULED FOR RETRY #4164
- HL7 ORU messages to DICOM Encapsulated PDF / CDA documents : Enable to use Imaging Result Payload segment's OBX.3 - Observation Identifier coded entry in code item of root level Concept Name Code Sequence (0040,A043) #4167
- STOW-RS: Support upload of bzip2 compressed genomic data VCF file as Bulkdata and store it as object of private SOP Class #4168
- WADO-RS: Support download of bzip2 compressed genomic data VCF file as Bulkdata stored in object of private SOP Class #4169
- WADO-URI: Support download of bzip2 compressed genomic data VCF file as Bulkdata stored in object of private SOP Class #4170
- Accept SOP Class Private Dcm4che Encapsulated Bzip2 VCF/Document Storage by default configuration #4171
- UI Studies page Upload bulkdata file service : Enable to upload bzip2 compressed (VCF) file to the archive #4172
- Merge Patient(s) RS services : Improve LOG.info message of prior patient identifier(s) merged with target patient identifier #4177
- Merge Patients RS service : Extend request payload containing array of prior patient identifiers to also include each of their other patient identifiers #4178
- Include private attributes with values of DB columns study.ext_retrieve_aet, series.ext_retrieve_aet and instance.ext_retrieve_aet in QIDO-RS response #4179
- Redirect WADO-RS requests to external Web Application, if some of the requested objects are no longer accessible #4180
- archive docker image: Rotate Wildfly Audit Log (audit-log.log) files periodically #4183
- Enable to configure different proxy port for Wildfly Aministration Console for navigation from Archive Web UI #4185
- Purge no longer used properties from reponse of RESTful service "GET /dcm4chee-arc/devicename" #4186
- Enable conditions on any/missing attribute value also for SQ attributes #4189
- Configure timeouts for DICOM and HL7 connections by default #4190
Bug Fixes
- UI Navigation - Studies : Functions specified in Actions for Selections do not work if all studies are selected using Select all studies post Toggle Checkboxes #3637
- UI Configuration : Selecting a non DICOM network connection on Register new application entity using 'select existing device' is unresponsive on failure #3716
- UI Navigation Studies / Series : Study Size range filter allows adding text instead of numbers #4096
- RESTful service to Import Instances returns error code 500 (Internal Server) instead 400 (Bad Request) on wrong path in payload #4099
- Loading Configuration page for archive UI in German fails #4100
- UI Navigation Studies / Series : Modified widget issues #4108
- UI Navigation Studies / Series : SOP Classes in Study shows all SOP Classes instead of just Storage SOP Classes #4109
- Series QIDO-RS services : Expiration State query filter is ineffective #4114
- UI: Navigation: In the range-picker the description text is shown instead of the placeholder text #4115
- UI Navigation : Empty More Functions dropdown shown in MPPS #4117
- Delete Patient RS service fails with EntityNotFoundException if config Delete Patient on Delete Last Study is set to true #4123
- UI Navigation : Remove incorrect filters Batch ID and Scheduled Time shown on Verify Storage of Study / Series / Instance dialog #4126
- UI Navigation : Schedule at single date time filter no longer available #4129
- update-5.26-.sql: several SQL statements are wrongly listed in part 2 instead of in part 1 #4130
- Delete Patient audit triggered by Delete Study RS service does not contain HTTP request info #4133
- Create patient LOG.info incorrectly displays hash code of created Patient ID in server log #4134
- UI Configuration : Optional MSH Fields enumeration no longer displayed for HL7 Application #4135
- Rectify LOG.info message displayed on deletion of MWL by REST service #4142
- Update Study / Series RS : Incorrect Responses sent on patient identifier missing in request payload, on patient mismatch; LOG.info messages missing on successful update #4147
- Inconsistent HTTP error response codes sent on PatientMergedException for RS services #4152
- UI Navigation Studies : Export matching studies in More Functions no longer works #4163
- DICOM objects stored to archive without a Patient ID (0010,0020) result in incorrect patient identifier values in attributes dataset #4166
- Change Pa...