comparison NEWS @ 5470:1dc6e4b7f5d8

reviewed NEWS
author Sebastien Jodogne <s.jodogne@gmail.com>
date Mon, 18 Dec 2023 21:15:42 +0100
parents 505416b269a0
children 6cb91df32207
comparison
equal deleted inserted replaced
5469:514fd39f87a8 5470:1dc6e4b7f5d8
5 ------- 5 -------
6 6
7 * Performance: 7 * Performance:
8 - Allow multiple plugins to use the plugin SDK at the same time. In previous versions, 8 - Allow multiple plugins to use the plugin SDK at the same time. In previous versions,
9 functions like instance transcoding or instance reading where mutually exclusive. 9 functions like instance transcoding or instance reading where mutually exclusive.
10 This can bring some significant improvements particularly in viewers. 10 This can bring some significant improvements, especially in viewers.
11 - Optimized the StorageCache to prevent loading the same file multiple times if 11 - Optimized the StorageCache to prevent loading the same file multiple times if
12 multiple users request the same file at the same time. 12 multiple users request the same file at the same time.
13 - The StorageCache is now also storing transcoded instances that have been requested by /file?transcode=... 13 - The StorageCache is now also storing transcoded instances that have been requested by /file?transcode=...
14 that is now used by the DICOMweb plugin. This speeds up retrieval of transcoded frames through WADO-RS. 14 that is now used by the DICOMweb plugin. This speeds up retrieval of transcoded frames through WADO-RS.
15 - Now displaying timings when reading from/writing to disk in the verbose logs. 15 - Now displaying timings when reading from/writing to disk in the verbose logs.
16 * Housekeeper plugin: 16 * HTTP compression:
17 - Update to rebuild the cache of the DICOMweb plugin when updating to DICOMweb 1.15.
18 - New trigger configuration: "DicomWebCacheChange"
19 - Fixed reading the triggers configuration.
20 * HTTP Compression:
21 - The default value of the "HttpCompressionEnabled" is now false by default. This reduces 17 - The default value of the "HttpCompressionEnabled" is now false by default. This reduces
22 the Orthanc overall CPU usage and latency. This is suitable for setups with large 18 the Orthanc overall CPU usage and latency. This is suitable for setups with large
23 bandwidth network like LAN. 19 bandwidth network like LAN.
24 - When "HttpCompressionEnabled" is true, only the content that is clearly identified as 20 - When "HttpCompressionEnabled" is true, only the content that is clearly identified as
25 compressible is compressed (JSON, XML, HTML, text, ...). DICOM files are never 21 compressible is compressed (JSON, XML, HTML, text, ...). DICOM files are never
26 compressed over HTTP. In prior versions, all content types were compressed. 22 compressed over HTTP. In prior versions, all content types were compressed.
27 This notably greatly improve loading time of large DICOM 23 This notably greatly improves loading time of large DICOM
28 files through WADO-RS e.g in StoneViewer when working on large bandwidth networks. 24 files through WADO-RS e.g in StoneViewer when working on large bandwidth networks.
29 - When "HttpCompressionEnabled" is true, content < 2KB are never compressed. 25 - When "HttpCompressionEnabled" is true, content < 2KB are never compressed.
30 * Logs: 26 * Logs:
31 - Each line of log now contains the name of the thread that is logging the message. 27 - Each line of log now contains the name of the thread that is logging the message.
32 A new '--logs-no-thread' command line option can be used to get back to the previous behavior to 28 A new "--logs-no-thread" command line option can be used to get back to the previous behavior to
33 keep backward compatibility. 29 keep backward compatibility.
34
35
36 Bug Fixes
37 ---------
38
39 * Solved a deadlock related to the Job Engine events and plugins. Job events are now pushed
40 into a queue to be handled asynchronously by plugins.
41 * Zip of studies whose PatientName and PatientID did not contain any ASCII character are now valid.
42
43 30
44 REST API 31 REST API
45 -------- 32 --------
46 33
47 * API version upgraded to 22 34 * API version upgraded to 22
48 * Added a route to delete completed jobs from history: DELETE /jobs/{id} 35 * Added a route to delete completed jobs from history: DELETE /jobs/{id}
49 * added a "transcode" option to the /file route: 36 * Added a "transcode" option to the /file route:
50 e.g: /instances/../file?transcode=1.2.840.10008.1.2.4.80 37 e.g: /instances/../file?transcode=1.2.840.10008.1.2.4.80
51 * now accepting GET requests on these 3 routes to create archive/media: 38 * now accepting GET requests on these 3 routes to create archive/media:
52 /tools/create-archive?resources=..,..2&transcode=1.2.840.10008.1.2.4.80 39 /tools/create-archive?resources=..,..2&transcode=1.2.840.10008.1.2.4.80
53 /tools/create-media?resources=..,..2&transcode=1.2.840.10008.1.2.4.80 40 /tools/create-media?resources=..,..2&transcode=1.2.840.10008.1.2.4.80
54 /tools/create-media-extended?resources=..,..2&transcode=1.2.840.10008.1.2.4.80 41 /tools/create-media-extended?resources=..,..2&transcode=1.2.840.10008.1.2.4.80
55 * All 'expand' GET arguments now accepts expand=true and expand=false values. 42 * All "expand" GET arguments now accepts "expand=true" and "expand=false" values.
56 The /studies/../instances and sibling routes are the only whose expand is true if not specified. 43 The /studies/../instances and sibling routes are the only whose expand is true if not specified.
57 These routes now accepts expand=false to simply list the child resources ids. 44 These routes now accepts "expand=false" to simply list the child resources ids.
58 * In /tools/metrics-prometheus: 45 * In /tools/metrics-prometheus:
59 - 'orthanc_dicom_cache_size' renamed into 'orthanc_dicom_cache_size_mb' 46 - "orthanc_dicom_cache_size" renamed as "orthanc_dicom_cache_size_mb"
60 - added 'orthanc_storage_cache_count' and 'orthanc_storage_cache_size_mb' 47 - added "orthanc_storage_cache_count" and "orthanc_storage_cache_size_mb"
61 48
62 49 Plugins
63 Plugins 50 -------
64 ------- 51
65 52 * Housekeeper plugin:
53 - Update to rebuild the cache of the DICOMweb plugin when updating to DICOMweb 1.15.
54 - New trigger configuration: "DicomWebCacheChange"
55 - Fixed reading the triggers configuration.
56 - Introduced a "sleep" to lower CPU usage when idle.
66 * Plugins are now allowed to modify/delete private metadata/attachments 57 * Plugins are now allowed to modify/delete private metadata/attachments
67 (i.e. whose identifiers are < 1024) 58 (i.e. whose identifiers are < 1024)
68 * Added "OrthancPluginSetCurrentThreadName()" in the plugin SDK. 59 * Added "OrthancPluginSetCurrentThreadName()" in the plugin SDK.
69
70 60
71 Maintenance 61 Maintenance
72 ----------- 62 -----------
73 63
74 * Fix unit test PngWriter.Color16Pattern on big-endian architectures, 64 * Fix unit test PngWriter.Color16Pattern on big-endian architectures,
75 as suggested by Etienne Mollier: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1041813 65 as suggested by Etienne Mollier: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1041813
76 * Prevent the leak of the full path of the source files in the binaries 66 * Prevent the leak of the full path of the source files in the binaries
77 * Fix loading of DCMTK dictionary in the MultitenantDicom plugin when built dynamically: 67 * Fix loading of DCMTK dictionary in the MultitenantDicom plugin when built dynamically:
78 https://discourse.orthanc-server.org/t/dimse-failure-using-multitenant-plugin/3665 68 https://discourse.orthanc-server.org/t/dimse-failure-using-multitenant-plugin/3665
79 * Housekeeper: Introduced a 'sleep' to lower CPU usage when idle.
80 * Support multiple values in SpecificCharacterSet in C-Find answers: 69 * Support multiple values in SpecificCharacterSet in C-Find answers:
81 https://discourse.orthanc-server.org/t/c-find-fails-on-unknown-specific-character-set-iso-2022-ir-6-iso-2022-ir-100/3947 70 https://discourse.orthanc-server.org/t/c-find-fails-on-unknown-specific-character-set-iso-2022-ir-6-iso-2022-ir-100/3947
82 * When exporting a study archive, make sure to use the PatientName from the study and not from the patient 71 * When exporting a study archive, make sure to use the PatientName from the study and not from the patient
83 in case of PatientID collision. 72 in case of PatientID collision.
84 * DICOM C-Store: 73 * DICOM C-Store:
85 - Avoid some unneccessary renegotiation of DICOM association. 74 - Avoid some unnecessary renegotiation of DICOM association.
86 - Force renegotiation in case no presentation context were accepted in previous association (we have 75 - Force renegotiation in case no presentation context were accepted in previous association (we have
87 observed PACS that were not consistent in the accepted presentation contexts) 76 observed PACS that were not consistent in the accepted presentation contexts)
88 - Improved logging 77 - Improved logging
89 * Upgraded dependencies for static builds: 78 * Solved a deadlock related to the Job Engine events and plugins. Job events are now pushed
90 - boost 1.83.0 79 into a queue to be handled asynchronously by plugins.
91 * Upgraded minizip library to stay away from CVE-2023-45853 although Orthanc is likely not affected since zip 80 * ZIP of studies whose PatientName and PatientID did not contain any ASCII character are now valid.
81 * Upgraded minizip library to stay away from CVE-2023-45853 although Orthanc is likely not affected since ZIP
92 filenames are based on DICOM Tag values whose length is limited in size. 82 filenames are based on DICOM Tag values whose length is limited in size.
93 Great thanks to James Addison for notifying us about the vulnerability and patch to apply ! 83 Great thanks to James Addison for notifying us about the vulnerability and patch to apply !
94 * Fix XSS in Orthanc error reporting (as reported by Sébastien Doria, Vumetric Cybersecurity) by: 84 * Fix XSS in Orthanc error reporting (as reported by Sébastien Doria, Vumetric Cybersecurity) by:
95 - always including a 'Content-Type' header in HTTP responses with a body. 85 - always including a "Content-Type" header in HTTP responses with a body.
96 - always including 'X-Content-Type-Options: nosniff' 86 - always including "X-Content-Type-Options: nosniff"
87 * Upgraded dependencies for static builds:
88 - boost 1.83.0
97 89
98 90
99 Version 1.12.1 (2023-07-04) 91 Version 1.12.1 (2023-07-04)
100 =========================== 92 ===========================
101 93