Mercurial > hg > orthanc-webviewer
comparison Orthanc/NEWS @ 186:ab66a6baf2ae
sync
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Thu, 22 Mar 2018 16:59:06 +0100 |
parents | |
children | a11bf02917e9 |
comparison
equal
deleted
inserted
replaced
185:3e45f3752074 | 186:ab66a6baf2ae |
---|---|
1 Pending changes in the mainline | |
2 =============================== | |
3 | |
4 REST API | |
5 -------- | |
6 | |
7 * "/system" URI returns the version of the Orthanc REST API | |
8 * "/tools/now" returns the current UTC (universal) time | |
9 * "/tools/now-local" returns the curent local time. | |
10 This was the behavior of "/tools/now" until release 1.3.1. | |
11 * Added "?expand" GET argument to "/peers" and "/modalities" routes | |
12 * New URI: "/tools/create-media-extended" to generate a DICOMDIR | |
13 archive from several resources, including additional type-3 tags | |
14 | |
15 Lua | |
16 --- | |
17 | |
18 * New CMake option: "-DENABLE_LUA_MODULES=ON" to enable support for | |
19 loading external Lua modules if the Lua engine is statically linked | |
20 | |
21 Plugins | |
22 ------- | |
23 | |
24 * New error code: DatabaseUnavailable | |
25 | |
26 Maintenance | |
27 ----------- | |
28 | |
29 * Orthanc now uses UTC (universal time) instead of local time in its database | |
30 * Fix to allow creating DICOM instances with empty Specific Character Set (0008,0005) | |
31 * Upgrade to curl 7.57.0 for static and Windows builds | |
32 * Support of Linux Standard Base | |
33 * Static linking against libuuid (from e2fsprogs) | |
34 * Fix static build on CentOS 6 | |
35 * Upgrade to JsonCpp 1.8.4 for static builds | |
36 * Possibility of using JsonCpp 0.10.6 if the compiler does not support C++11 | |
37 with the "-DUSE_LEGACY_JSONCPP=ON" CMake option | |
38 | |
39 | |
40 Version 1.3.1 (2017-11-29) | |
41 ========================== | |
42 | |
43 General | |
44 ------- | |
45 | |
46 * Built-in decoding of palette images | |
47 | |
48 REST API | |
49 -------- | |
50 | |
51 * New URI: "/instances/.../frames/.../raw.gz" to compress raw frames using gzip | |
52 * New argument "ignore-length" to force the inclusion of too long tags in JSON | |
53 * New argument "/.../media?extended" to include additional type-3 tags in DICOMDIR | |
54 | |
55 Plugins | |
56 ------- | |
57 | |
58 * New pixel formats exposed in SDK: BGRA32, Float32, Grayscale32, RGB48 | |
59 | |
60 Maintenance | |
61 ----------- | |
62 | |
63 * Creation of ./Resources/CMake/OrthancFramework*.cmake to reuse the Orthanc | |
64 C++ framework in other projects | |
65 * New security-related options: "DicomAlwaysAllowEcho" | |
66 * Use "GBK" (frequently used in China) as an alias for "GB18030" | |
67 * Experimental support of actively maintained Civetweb to replace Mongoose 3.8 | |
68 * Fix issue 31 for good (create new modality types for Philips ADW, GE Xeleris, GE AWServer) | |
69 * Fix issue 64 (OpenBSD support) | |
70 * Fix static compilation of DCMTK 3.6.2 on Fedora | |
71 * Upgrade to Boost 1.65.1 in static builds | |
72 * Upgrade to SQLite amalgamation 3.21.0 in static builds | |
73 | |
74 | |
75 Version 1.3.0 (2017-07-19) | |
76 ========================== | |
77 | |
78 General | |
79 ------- | |
80 | |
81 * Orthanc now anonymizes according to Basic Profile of PS 3.15-2017c Table E.1-1 | |
82 * In the "DicomModalities" configuration: | |
83 - Manufacturer type MedInria is now obsolete | |
84 - Manufacturer types AgfaImpax and SyngoVia are obsolete too | |
85 (use GenericNoWildcardInDates instead) | |
86 - Obsolete manufacturers are still accepted but might disappear in the future | |
87 - Added new manufacturer: GenericNoUniversalWildcard to replace all '*' by '' in | |
88 outgoing C-Find requests | |
89 * New security-related options: "DicomAlwaysAllowStore" and "DicomCheckModalityHost" | |
90 | |
91 REST API | |
92 -------- | |
93 | |
94 * Argument "Since" in URI "/tools/find" (related to issue 53) | |
95 * Argument "DicomVersion" in URIs "/{...}/{...}/anonymization" | |
96 | |
97 Plugins | |
98 ------- | |
99 | |
100 * New function: "OrthancPluginRegisterIncomingHttpRequestFilter2()" | |
101 | |
102 Lua | |
103 --- | |
104 | |
105 * Added HTTP headers support for Lua HttpPost/HttpGet/HttpPut/HttpDelete | |
106 | |
107 Orthanc Explorer | |
108 ---------------- | |
109 | |
110 * Query/retrieve: Added button for "DR" modality | |
111 | |
112 Maintenance | |
113 ----------- | |
114 | |
115 * Ability to retrieve raw frames encoded as unsigned 32-bits integers | |
116 * Fix issue 29 (more consistent handling of the "--upgrade" argument) | |
117 * Fix issue 31 (create new modality types for Philips ADW, GE Xeleris, GE AWServer) | |
118 * Fix issue 35 (AET name is not transferred to Orthanc using DCMTK 3.6.0) | |
119 * Fix issue 44 (bad interpretation of photometric interpretation MONOCHROME1) | |
120 * Fix issue 45 (crash when providing a folder to "--config" command-line option) | |
121 * Fix issue 46 (PHI remaining after anonymization) | |
122 * Fix issue 49 (worklists: accentuated characters are removed from C-Find responses) | |
123 * Fix issue 52 (DICOM level security association problems) | |
124 * Fix issue 55 (modification/anonymization of tags that might break the database | |
125 model now requires the "Force" parameter to be set to "true" in the query) | |
126 * Fix issue 56 (case-insensitive matching over accents) | |
127 * Fix Debian #865606 (orthanc FTBFS with libdcmtk-dev 3.6.1~20170228-2) | |
128 * Fix XSS inside DICOM in Orthanc Explorer (as reported by Victor Pasnkel, Morphus Labs) | |
129 * Upgrade to DCMTK 3.6.2 in static builds (released on 2017-07-17) | |
130 * Upgrade to Boost 1.64.0 in static builds | |
131 * New advanced "Locale" configuration option | |
132 * Removed configuration option "USE_DCMTK_361_PRIVATE_DIC" | |
133 | |
134 | |
135 Version 1.2.0 (2016/12/13) | |
136 ========================== | |
137 | |
138 General | |
139 ------- | |
140 | |
141 * Handling of private tags/creators in the "Dictionary" configuration option | |
142 * New configuration options: "LoadPrivateDictionary", "DicomScuTimeout" and "DicomScpTimeout" | |
143 * New metadata automatically computed at the instance level: "TransferSyntax" and "SopClassUid" | |
144 | |
145 REST API | |
146 -------- | |
147 | |
148 * "/tools/invalidate-tags" to invalidate the JSON summary of all the DICOM files | |
149 (useful if private tags are registered, or if changing the default encoding) | |
150 * "Permissive" flag for URI "/modalities/{...}/store" to ignore C-STORE transfer errors | |
151 * "Asynchronous" flag for URIs "/modalities/{...}/store" and "/peers/{...}/store" | |
152 to avoid waiting for the completion of image transfers | |
153 * Possibility to DELETE "dicom-as-json" attachments to reconstruct the JSON summaries | |
154 (useful if "Dictionary" has changed) | |
155 * "Keep" option for modifications to keep original DICOM identifiers (advanced feature) | |
156 * "/tools/default-encoding" to get or temporarily change the default encoding | |
157 * "/{resource}/{id}/reconstruct" to reconstruct the main DICOM tags, the JSON summary and | |
158 the metadata of a resource (useful to compute new metadata, or if using "Keep" above) | |
159 | |
160 Plugins | |
161 ------- | |
162 | |
163 * New function: "OrthancPluginRegisterPrivateDictionaryTag()" to register private tags | |
164 * More control over client cache in the ServeFolders plugin | |
165 * New C++ help wrappers in "Plugins/Samples/Common/" to read DICOM datasets from REST API | |
166 * New data structure: "OrthancPluginFindMatcher" to match DICOM against C-FIND queries | |
167 | |
168 Maintenance | |
169 ----------- | |
170 | |
171 * Fix handling of encodings in C-FIND requests (including for worklists) | |
172 * Use of DCMTK 3.6.1 dictionary of private tags in standalone builds | |
173 * Avoid hard crash if not enough memory (handling of std::bad_alloc) | |
174 * Improved robustness of Orthanc Explorer wrt. query/retrieve (maybe fix issue 24) | |
175 * Fix serious performance issue with C-FIND | |
176 * Fix extraction of the symbolic name of the private tags | |
177 * Performance warning if runtime debug assertions are turned on | |
178 * Improved robustness against files with no PatientID | |
179 * Upgrade to curl 7.50.3 for static and Windows builds | |
180 * Content-Type for JSON documents is now "application/json; charset=utf-8" | |
181 * Ignore "Group Length" tags in C-FIND queries | |
182 * Fix handling of worklist SCP with ReferencedStudySequence and ReferencedPatientSequence | |
183 * Fix handling of Move Originator AET and ID in C-MOVE SCP | |
184 * Fix vulnerability ZSL-2016-5379 "Unquoted Service Path Privilege Escalation" in the | |
185 Windows service | |
186 * Fix vulnerability ZSL-2016-5380 "Remote Memory Corruption Vulnerability" in DCMTK 3.6.0 | |
187 | |
188 | |
189 Version 1.1.0 (2016/06/27) | |
190 ========================== | |
191 | |
192 General | |
193 ------- | |
194 | |
195 * HTTPS client certificates can be associated with Orthanc peers to enhance security over Internet | |
196 * Possibility to use PKCS#11 authentication for hardware security modules with Orthanc peers | |
197 * New command-line option "--logfile" to output the Orthanc log to the given file | |
198 * Support of SIGHUP signal (restart Orthanc only if the configuration files have changed) | |
199 | |
200 REST API | |
201 -------- | |
202 | |
203 * New URI: "/instances/.../frames/.../raw" to access the raw frames (bypass image decoding) | |
204 * New URI "/modalities/.../move" to issue C-MOVE SCU requests | |
205 * "MoveOriginatorID" can be specified for "/modalities/.../store" | |
206 | |
207 Dicom protocol | |
208 -------------- | |
209 | |
210 * Support of optional tags for counting resources in C-FIND: | |
211 0008-0061, 0008-0062, 0020-1200, 0020-1202, 0020-1204, 0020-1206, 0020-1208, 0020-1209 | |
212 * Support of Move Originator Message ID (0000,1031) in C-STORE responses driven by C-MOVE | |
213 | |
214 Plugins | |
215 ------- | |
216 | |
217 * Speedup in plugins by removing unnecessary locks | |
218 * New callback to filter incoming HTTP requests: OrthancPluginRegisterIncomingHttpRequestFilter() | |
219 * New callback to handle non-worklists C-FIND requests: OrthancPluginRegisterFindCallback() | |
220 * New callback to handle C-MOVE requests: OrthancPluginRegisterMoveCallback() | |
221 * New function: "OrthancPluginHttpClient()" to do HTTP requests with full control | |
222 * New function: "OrthancPluginGenerateUuid()" to generate a UUID | |
223 * More than one custom image decoder can be installed (e.g. to handle different transfer syntaxes) | |
224 | |
225 Lua | |
226 --- | |
227 | |
228 * Possibility to dynamically fix outgoing C-FIND requests using "OutgoingFindRequestFilter()" | |
229 * Access to the HTTP headers in the "IncomingHttpRequestFilter()" callback | |
230 | |
231 Image decoding | |
232 -------------- | |
233 | |
234 * Huge speedup if decoding the family of JPEG transfer syntaxes | |
235 * Refactoring leading to speedups with custom image decoders (including Web viewer plugin) | |
236 * Support decoding of RLE Lossless transfer syntax | |
237 * Support of signed 16bpp images in ParsedDicomFile | |
238 | |
239 Maintenance | |
240 ----------- | |
241 | |
242 * New logo of Orthanc | |
243 * Fix issue 11 (is_regular_file() fails for FILE_ATTRIBUTE_REPARSE_POINT) | |
244 * Fix issue 16 ("Limit" parameter error in REST API /tools/find method) | |
245 * Fix of Debian bug #818512 ("FTBFS: Please install libdcmtk*-dev") | |
246 * Fix of Debian bug #823139 ("orthanc: Please provide RecoverCompressedFile.cpp") | |
247 * Replaced "localhost" by "127.0.0.1", as it might impact performance on Windows | |
248 * Compatibility with CMake >= 3.5.0 | |
249 * Possibility to use forthcoming DCMTK 3.6.1 in static builds (instead of 3.6.0) | |
250 * Upgrade to Boost 1.60.0 for static builds | |
251 * Use of HTTP status 403 Forbidden (instead of 401) if access to a REST resource is disallowed | |
252 * Option "HttpsVerifyPeers" can be used to connect against self-signed HTTPS certificates | |
253 * New configuration option "AllowFindSopClassesInStudy" | |
254 * Macro "__linux" (now obsolete) replaced by macro "__linux__" (maybe solves Debian bug #821011) | |
255 * Modification of instances can now replace PixelData (resp. EncapsulatedDocument) with | |
256 provided a PNG/JPEG image (resp. PDF file) if it is encoded using Data URI Scheme | |
257 * Dropped support of Google Log | |
258 | |
259 | |
260 Version 1.0.0 (2015/12/15) | |
261 ========================== | |
262 | |
263 * Lua: "IncomingFindRequestFilter()" to apply filters to incoming C-FIND requests | |
264 * New function in plugin SDK: "OrthancPluginSendMultipartItem2()" | |
265 * Fix of DICOMDIR generation with DCMTK 3.6.1, support of encodings | |
266 * Fix range search if the lower or upper limit is absent | |
267 * Fix modality worklists lookups if tags with UN (unknown) VR are present | |
268 * Warn about badly formatted modality/peer definitions in configuration file at startup | |
269 | |
270 | |
271 Version 0.9.6 (2015/12/08) | |
272 ========================== | |
273 | |
274 * Promiscuous mode (accept unknown SOP class UID) is now turned off by default | |
275 * Fix serialization of DICOM buffers that might contain garbage trailing | |
276 * Fix modality worklists server if some fields are null | |
277 * More tolerant "/series/.../ordered-slices" with broken series | |
278 * Improved logging information if upgrade fails | |
279 * Fix formatting of multipart HTTP answers (bis) | |
280 | |
281 | |
282 Version 0.9.5 (2015/12/02) | |
283 ========================== | |
284 | |
285 Major | |
286 ----- | |
287 | |
288 * Experimental support of DICOM C-FIND SCP for modality worklists through plugins | |
289 * Support of DICOM C-FIND SCU for modality worklists ("/modalities/{dicom}/find-worklist") | |
290 | |
291 REST API | |
292 -------- | |
293 | |
294 * New URIs: | |
295 - "/series/.../ordered-slices" to order the slices of a 2D+t or 3D series | |
296 - "/tools/shutdown" to stop Orthanc from the REST API | |
297 - ".../compress", ".../uncompress" and ".../is-compressed" for attachments | |
298 - "/tools/create-archive" to create ZIP from a set of resources | |
299 - "/tools/create-media" to create ZIP+DICOMDIR from a set of resources | |
300 - "/instances/.../header" to get the meta information (header) of the DICOM instance | |
301 * "/tools/create-dicom": | |
302 - Support of binary tags encoded using data URI scheme | |
303 - Support of hierarchical structures (creation of sequences) | |
304 - Create tags with unknown VR | |
305 * "/modify" can insert/modify sequences | |
306 * ".../preview" and ".../image-uint8" can return JPEG images if the HTTP Accept Header asks so | |
307 * "Origin" metadata for the instances | |
308 | |
309 Minor | |
310 ----- | |
311 | |
312 * New configuration options: | |
313 - "UnknownSopClassAccepted" to disable promiscuous mode (accept unknown SOP class UID) | |
314 - New configuration option: "Dictionary" to declare custom DICOM tags | |
315 * Add ".dcm" suffix to files in ZIP archives (cf. URI ".../archive") | |
316 * MIME content type can be associated to custom attachments (cf. "UserContentType") | |
317 | |
318 Plugins | |
319 ------- | |
320 | |
321 * New functions: | |
322 - "OrthancPluginRegisterDecodeImageCallback()" to replace the built-in image decoder | |
323 - "OrthancPluginDicomInstanceToJson()" to convert DICOM to JSON | |
324 - "OrthancPluginDicomBufferToJson()" to convert DICOM to JSON | |
325 - "OrthancPluginRegisterErrorCode()" to declare custom error codes | |
326 - "OrthancPluginRegisterDictionaryTag()" to declare custom DICOM tags | |
327 - "OrthancPluginLookupDictionary()" to get information about some DICOM tag | |
328 - "OrthancPluginRestApiGet2()" to provide HTTP headers when calling Orthanc API | |
329 - "OrthancPluginGetInstanceOrigin()" to know through which mechanism an instance was received | |
330 - "OrthancPluginCreateImage()" and "OrthancPluginCreateImageAccessor()" to create images | |
331 - "OrthancPluginDecodeDicomImage()" to decode DICOM images | |
332 - "OrthancPluginComputeMd5()" and "OrthancPluginComputeSha1()" to compute MD5/SHA-1 hash | |
333 * New events in change callbacks: | |
334 - "OrthancStarted" | |
335 - "OrthancStopped" | |
336 - "UpdatedAttachment" | |
337 - "UpdatedMetadata" | |
338 * "/system" URI gives information about the plugins used for storage area and DB back-end | |
339 * Plugin callbacks must now return explicit "OrthancPluginErrorCode" (instead of integers) | |
340 | |
341 Lua | |
342 --- | |
343 | |
344 * Optional argument "keepStrings" in "DumpJson()" | |
345 | |
346 Maintenance | |
347 ----------- | |
348 | |
349 * Full indexation of the patient/study tags to speed up searches and C-FIND | |
350 * Many refactorings, notably of the searching features and of the image decoding | |
351 * C-MOVE SCP for studies using AccessionNumber tag | |
352 * Fix issue 4 (C-STORE Association not renegotiated on Specific-to-specific transfer syntax change) | |
353 * Fix formatting of multipart HTTP answers | |
354 * "--logdir" flag creates a single log file instead of 3 separate files for errors/warnings/infos | |
355 * "--errors" flag lists the error codes that could be returned by Orthanc | |
356 * Under Windows, the exit status of Orthanc corresponds to the encountered error code | |
357 * New "AgfaImpax", "EFilm2" and "Vitrea" modality manufacturers | |
358 * C-FIND SCP will return tags with sequence value representation | |
359 * Upgrade to Boost 1.59.0 for static builds | |
360 | |
361 | |
362 Version 0.9.4 (2015/09/16) | |
363 ========================== | |
364 | |
365 * Preview of PDF files encapsulated in DICOM from Orthanc Explorer | |
366 * Creation of DICOM files with encapsulated PDF through "/tools/create-dicom" | |
367 * "limit" and "since" arguments while retrieving DICOM resources in the REST API | |
368 * Support of "deflate" and "gzip" content-types in HTTP requests | |
369 * Options to validate peers against CA certificates in HTTPS requests | |
370 * New configuration option: "HttpTimeout" to set the default timeout for HTTP requests | |
371 | |
372 Lua | |
373 --- | |
374 | |
375 * More information about the origin request in the "OnStoredInstance()" and | |
376 "ReceivedInstanceFilter()" callbacks. WARNING: This can result in | |
377 incompatibilities wrt. previous versions of Orthanc. | |
378 * New function "GetOrthancConfiguration()" to get the Orthanc configuration | |
379 | |
380 Plugins | |
381 ------- | |
382 | |
383 * New functions to compress/uncompress images using PNG and JPEG | |
384 * New functions to issue HTTP requests from plugins | |
385 * New function "OrthancPluginBufferCompression()" to (un)compress memory buffers | |
386 * New function "OrthancPluginReadFile()" to read files from the filesystem | |
387 * New function "OrthancPluginWriteFile()" to write files to the filesystem | |
388 * New function "OrthancPluginGetErrorDescription()" to convert error codes to strings | |
389 * New function "OrthancPluginSendHttpStatus()" to send HTTP status with a body | |
390 * New function "OrthancPluginRegisterRestCallbackNoLock()" for high-performance plugins | |
391 * Plugins have access to explicit error codes | |
392 * Improvements to the sample "ServeFolders" plugin | |
393 * Primitives to upgrade the database version in plugins | |
394 | |
395 Maintenance | |
396 ----------- | |
397 | |
398 * Many code refactorings | |
399 * Improved error codes (no more custom descriptions in exceptions) | |
400 * If error while calling the REST API, the answer body contains description of the error | |
401 (this feature can be disabled with the "HttpDescribeErrors" option) | |
402 * Upgrade to curl 7.44.0 for static and Windows builds | |
403 * Upgrade to libcurl 1.0.2d for static and Windows builds | |
404 * Depends on libjpeg 9a | |
405 * Bypass zlib uncompression if "StorageCompression" is enabled and HTTP client supports deflate | |
406 | |
407 | |
408 Version 0.9.3 (2015/08/07) | |
409 ========================== | |
410 | |
411 * C-Echo testing can be triggered from Orthanc Explorer (in the query/retrieve page) | |
412 * Removal of the dependency upon Google Log, Orthanc now uses its internal logger | |
413 (use -DENABLE_GOOGLE_LOG=ON to re-enable Google Log) | |
414 * Upgrade to JsonCpp 0.10.5 for static and Windows builds | |
415 | |
416 | |
417 Version 0.9.2 (2015/08/02) | |
418 ========================== | |
419 | |
420 * Upgrade to Boost 1.58.0 for static and Windows builds | |
421 * Source code repository moved from Google Code to BitBucket | |
422 * Inject version information into Windows binaries | |
423 * Fix access to binary data in HTTP/REST requests by Lua scripts | |
424 * Fix potential deadlock in the callbacks of plugins | |
425 | |
426 | |
427 Version 0.9.1 (2015/07/02) | |
428 ========================== | |
429 | |
430 General | |
431 ------- | |
432 | |
433 * The configuration can be splitted into several files stored inside the same folder | |
434 * Custom setting of the local AET during C-STORE SCU (both in Lua and in the REST API) | |
435 * Many code refactorings | |
436 | |
437 Lua | |
438 --- | |
439 | |
440 * Access to the REST API of Orthanc (RestApiGet, RestApiPost, RestApiPut, RestApiDelete) | |
441 * Functions to convert between Lua values and JSON strings: "ParseJson" and "DumpJson" | |
442 * New events: "OnStablePatient", "OnStableStudy", "OnStableSeries", "Initialize", "Finalize" | |
443 | |
444 Plugins | |
445 ------- | |
446 | |
447 * Plugins can retrieve the configuration file directly as a JSON string | |
448 * Plugins can send answers as multipart messages | |
449 | |
450 Fixes | |
451 ----- | |
452 | |
453 * Fix compatibility issues for C-FIND SCU to Siemens Syngo.Via modalities SCP | |
454 * Fix issue 15 (Lua scripts making HTTP requests) | |
455 * Fix issue 35 (Characters in PatientID string are not protected for C-FIND) | |
456 * Fix issue 37 (Hyphens trigger range query even if datatype does not support ranges) | |
457 | |
458 | |
459 Version 0.9.0 (2015/06/03) | |
460 ========================== | |
461 | |
462 Major | |
463 ----- | |
464 | |
465 * DICOM Query/Retrieve available from Orthanc Explorer | |
466 * C-MOVE SCU and C-FIND SCU are accessible through the REST API | |
467 * "?expand" flag for URIs "/patients", "/studies" and "/series" | |
468 * "/tools/find" URI to search for DICOM resources from REST | |
469 * Support of FreeBSD | |
470 * The "Orthanc Client" SDK is now a separate project | |
471 | |
472 Minor | |
473 ----- | |
474 | |
475 * Speed-up in Orthanc Explorer for large amount of images | |
476 * Speed-up of the C-FIND SCP server of Orthanc | |
477 * Allow replacing PatientID/StudyInstanceUID/SeriesInstanceUID from Lua scripts | |
478 * Option "CaseSensitivePN" to enable case-insensitive C-FIND SCP | |
479 | |
480 Fixes | |
481 ----- | |
482 | |
483 * Prevent freeze on C-FIND if no DICOM tag is to be returned | |
484 * Fix slow C-STORE SCP on recent versions of GNU/Linux, if | |
485 USE_SYSTEM_DCMTK is set to OFF (http://forum.dcmtk.org/viewtopic.php?f=1&t=4009) | |
486 * Fix issue 30 (QR response missing "Query/Retrieve Level" (008,0052)) | |
487 * Fix issue 32 (Cyrillic symbols): Introduction of the "Windows1251" encoding | |
488 * Plugins now receive duplicated GET arguments in their REST callbacks | |
489 | |
490 | |
491 Version 0.8.6 (2015/02/12) | |
492 ========================== | |
493 | |
494 Major | |
495 ----- | |
496 | |
497 * URIs to get all the parents of a given resource in a single REST call | |
498 * Instances without PatientID are now allowed | |
499 * Support of HTTP proxy to access Orthanc peers | |
500 | |
501 Minor | |
502 ----- | |
503 | |
504 * Support of Tudor DICOM in Query/Retrieve | |
505 * More flexible "/modify" and "/anonymize" for single instance | |
506 * Access to called AET and remote AET from Lua scripts ("OnStoredInstance") | |
507 * Option "DicomAssociationCloseDelay" to set delay before closing DICOM association | |
508 * ZIP archives now display the accession number of the studies | |
509 | |
510 Plugins | |
511 ------- | |
512 | |
513 * Introspection of plugins (cf. the "/plugins" URI) | |
514 * Plugins can access the command-line arguments used to launch Orthanc | |
515 * Plugins can extend Orthanc Explorer with custom JavaScript | |
516 * Plugins can get/set global properties to save their configuration | |
517 * Plugins can do REST calls to other plugins (cf. "xxxAfterPlugins()") | |
518 * Scan of folders for plugins | |
519 | |
520 Fixes | |
521 ----- | |
522 | |
523 * Code refactorings | |
524 * Fix issue 25 (AET with underscore not allowed) | |
525 * Fix replacement and insertion of private DICOM tags | |
526 * Fix anonymization generating non-portable DICOM files | |
527 | |
528 | |
529 Version 0.8.5 (2014/11/04) | |
530 ========================== | |
531 | |
532 General | |
533 ------- | |
534 | |
535 * Major speed-up thanks to a new database schema | |
536 * Plugins can monitor changes through callbacks | |
537 * Download ZIP + DICOMDIR from Orthanc Explorer | |
538 * Sample plugin framework to serve static resources (./Plugins/Samples/WebSkeleton/) | |
539 | |
540 Fixes | |
541 ----- | |
542 | |
543 * Fix issue 19 (YBR_FULL are decoded incorrectly) | |
544 * Fix issue 21 (Microsoft Visual Studio precompiled headers) | |
545 * Fix issue 22 (Error decoding multi-frame instances) | |
546 * Fix issue 24 (Build fails on OSX when directory has .DS_Store files) | |
547 * Fix crash when bad HTTP credentials are provided | |
548 | |
549 | |
550 Version 0.8.4 (2014/09/19) | |
551 ========================== | |
552 | |
553 * "/instances-tags" to get the tags of all the child instances of a | |
554 patient/study/series with a single REST call (bulk tags retrieval) | |
555 * Configuration/Lua to select the accepted C-STORE SCP transfer syntaxes | |
556 * Fix reporting of errors in Orthanc Explorer when sending images to peers/modalities | |
557 * Installation of plugin SDK in CMake | |
558 | |
559 | |
560 Version 0.8.3 (2014/09/11) | |
561 ========================== | |
562 | |
563 Major | |
564 ----- | |
565 | |
566 * Creation of ZIP archives for media storage, with DICOMDIR | |
567 * URIs to get all the children of a given resource in a single REST call | |
568 * "/tools/lookup" URI to map DICOM UIDs to Orthanc identifiers | |
569 * Support of index-only mode (using the "StoreDicom" option) | |
570 * Plugins can implement a custom storage area | |
571 | |
572 Minor | |
573 ----- | |
574 | |
575 * Configuration option to enable HTTP Keep-Alive | |
576 * Configuration option to disable the logging of exported resources in "/exports" | |
577 * Plugins can retrieve the path to Orthanc and to its configuration file | |
578 * "/tools/create-dicom" now accepts the "PatientID" DICOM tag (+ updated sample) | |
579 * Possibility to set HTTP headers from plugins | |
580 * "LastUpdate" metadata is now always returned for patients, studies and series | |
581 | |
582 Maintenance | |
583 ----------- | |
584 | |
585 * Refactoring of HttpOutput ("Content-Length" header is now always sent) | |
586 * Upgrade to Mongoose 3.8 | |
587 * Fixes for Visual Studio 2013 and Windows 64bit | |
588 * Fix issue 16: Handling of "AT" value representations in JSON | |
589 * Fix issue 17 | |
590 | |
591 | |
592 Version 0.8.2 (2014/08/07) | |
593 ========================== | |
594 | |
595 * Support of the standard text encodings | |
596 * Hot restart of Orthanc by posting to "/tools/reset" | |
597 * More fault-tolerant commands in Lua scripts | |
598 * Parameter to set the default encoding for DICOM files without SpecificCharacterSet | |
599 * Fix of issue #14 (support of XCode 5.1) | |
600 * Upgrade to Google Test 1.7.0 | |
601 | |
602 | |
603 Version 0.8.1 (2014/07/29) | |
604 ========================== | |
605 | |
606 General | |
607 ------- | |
608 | |
609 * Access patient module at the study level to cope with PatientID collisions | |
610 * On-the-fly conversion of JSON to XML according to the HTTP Accept header | |
611 * C-Echo SCU in the REST API | |
612 * DICOM conformance statement available at URI "/tools/dicom-conformance" | |
613 | |
614 Lua scripts | |
615 ----------- | |
616 | |
617 * Lua scripts can do HTTP requests, and thus can call Web services | |
618 * Lua scripts can invoke system commands, with CallSystem() | |
619 | |
620 Plugins | |
621 ------- | |
622 | |
623 * Lookup for DICOM UIDs in the plugin SDK | |
624 * Plugins have access to the HTTP headers and can answer with HTTP status codes | |
625 * Callback to react to the incoming of DICOM instances | |
626 | |
627 Fixes | |
628 ----- | |
629 | |
630 * Fix build of Google Log with Visual Studio >= 11.0 | |
631 * Fix automated generation of the list of resource children in the REST API | |
632 | |
633 | |
634 Version 0.8.0 (2014/07/10) | |
635 ========================== | |
636 | |
637 Major changes | |
638 ------------- | |
639 | |
640 * Routing images with Lua scripts | |
641 * Introduction of the Orthanc Plugin SDK | |
642 * Official support of OS X (Darwin) 10.8 | |
643 | |
644 Minor changes | |
645 ------------- | |
646 | |
647 * Extraction of tags for the patient/study/series/instance DICOM modules | |
648 * Extraction of the tags shared by all the instances of a patient/study/series | |
649 * Options to limit the number of results for an incoming C-FIND query | |
650 * Support of kFreeBSD | |
651 * Several code refactorings | |
652 * Fix OrthancCppClient::GetVoxelSizeZ() | |
653 | |
654 | |
655 Version 0.7.6 (2014/06/11) | |
656 ========================== | |
657 | |
658 * Support of JPEG and JPEG-LS decompression | |
659 * Download DICOM images as Matlab/Octave arrays | |
660 * Precompiled headers for Microsoft Visual Studio | |
661 | |
662 | |
663 Version 0.7.5 (2014/05/08) | |
664 ========================== | |
665 | |
666 * Dynamic negotiation of SOP classes for C-STORE SCU | |
667 * Creation of DICOM instances using the REST API | |
668 * Embedding of images within DICOM instances | |
669 * Adding/removal/modification of remote modalities/peers through REST | |
670 * Reuse of the previous SCU connection to avoid unnecessary handshakes | |
671 * Fix problems with anonymization and modification | |
672 * Fix missing licensing terms about reuse of some code from DCMTK | |
673 * Various code refactorings | |
674 | |
675 | |
676 Version 0.7.4 (2014/04/16) | |
677 ========================== | |
678 | |
679 * Switch to openssl-1.0.1g in static builds (cf. Heartbleed exploit) | |
680 * Switch to boost 1.55.0 in static builds (to solve compiling errors) | |
681 * Better logging about nonexistent tags | |
682 * Dcm4Chee manufacturer | |
683 * Automatic discovering of the path to the DICOM dictionaries | |
684 * In the "DicomModalities" config, the port number can be a string | |
685 | |
686 | |
687 Version 0.7.3 (2014/02/14) | |
688 ========================== | |
689 | |
690 Major changes | |
691 ------------- | |
692 | |
693 * Fixes in the implementation of the C-FIND handler for Query/Retrieve | |
694 * Custom attachment of files to patients, studies, series or instances | |
695 * Access to lowlevel info about the attached files through the REST API | |
696 * Recover pixel data for more transfer syntaxes (notably JPEG) | |
697 | |
698 Minor changes | |
699 ------------- | |
700 | |
701 * AET comparison is now case-insensitive by default | |
702 * Possibility to disable the HTTP server or the DICOM server | |
703 * Automatic computation of MD5 hashes for the stored DICOM files | |
704 * Maintenance tool to recover DICOM files compressed by Orthanc | |
705 * The newline characters in the configuration file are fixed for GNU/Linux | |
706 * Capture of the SIGTERM signal in GNU/Linux | |
707 | |
708 | |
709 Version 0.7.2 (2013/11/08) | |
710 ========================== | |
711 | |
712 * Support of Query/Retrieve from medInria | |
713 * Accept more transfer syntaxes for C-STORE SCP and SCU (notably JPEG) | |
714 * Create the meta-header when receiving files through C-STORE SCP | |
715 * Fixes and improvements thanks to the static analyzer cppcheck | |
716 | |
717 | |
718 Version 0.7.1 (2013/10/30) | |
719 ========================== | |
720 | |
721 * Use ZIP64 only when required to improve compatibility (cf. issue #7) | |
722 * Refactoring of the CMake options | |
723 * Fix for big-endian architectures (RedHat bug #985748) | |
724 * Use filenames with 8 characters in ZIP files for maximum compatibility | |
725 * Possibility to build Orthanc inplace (in the source directory) | |
726 | |
727 | |
728 Version 0.7.0 (2013/10/25) | |
729 ========================== | |
730 | |
731 Major changes | |
732 ------------- | |
733 | |
734 * DICOM Query/Retrieve is supported | |
735 | |
736 Minor changes | |
737 ------------- | |
738 | |
739 * Possibility to keep the PatientID during an anonymization | |
740 * Check whether "unzip", "tar" and/or "7-zip" are installed from CMake | |
741 | |
742 | |
743 Version 0.6.2 (2013/10/04) | |
744 ========================== | |
745 | |
746 * Build of the C++ client as a shared library | |
747 * Improvements and documentation of the C++ client API | |
748 * Fix of Debian bug #724947 (licensing issue with the SHA-1 library) | |
749 * Switch to Boost 1.54.0 (cf. issue #9) | |
750 * "make uninstall" is now possible | |
751 | |
752 | |
753 Version 0.6.1 (2013/09/16) | |
754 ========================== | |
755 | |
756 * Detection of stable patients/studies/series | |
757 * C-FIND SCU at the instance level | |
758 * Link from modified to original resource in Orthanc Explorer | |
759 * Fix of issue #8 | |
760 * Anonymization of the medical alerts tag (0010,2000) | |
761 | |
762 | |
763 Version 0.6.0 (2013/07/16) | |
764 ========================== | |
765 | |
766 Major changes | |
767 ------------- | |
768 | |
769 * Introduction of the C++ client | |
770 * Send DICOM resources to other Orthanc instances through HTTP | |
771 * Access to signed images (instances/.../image-int16) | |
772 (Closes: Debian #716958) | |
773 | |
774 Minor changes | |
775 ------------- | |
776 | |
777 * Export of DICOM files to the host filesystem (instances/.../export) | |
778 * Statistics about patients, studies, series and instances | |
779 * Link from anonymized to original resource in Orthanc Explorer | |
780 * Fixes for Red Hat and Debian packaging | |
781 * Fixes for history in Orthanc Explorer | |
782 * Fixes for boost::thread, as reported by Cyril Paulus | |
783 * Fix licensing (Closes: Debian #712038) | |
784 | |
785 Metadata | |
786 -------- | |
787 | |
788 * Access to the metadata through the REST API (.../metadata) | |
789 * Support of user-defined metadata | |
790 * "LastUpdate" metadata for patients, studies and series | |
791 * "/tools/now" to be used in combination with "LastUpdate" | |
792 * Improved support of series with temporal positions | |
793 | |
794 | |
795 Version 0.5.2 (2013/05/07) | |
796 ========================== | |
797 | |
798 * "Bulk" Store-SCU (send several DICOM instances with the same | |
799 DICOM connection) | |
800 * Store-SCU for patients and studies in Orthanc Explorer | |
801 * Filtering of incoming DICOM instances (through Lua scripting) | |
802 * Filtering of incoming HTTP requests (through Lua scripting) | |
803 * Clearing of "/exports" and "/changes" | |
804 * Check MD5 of third party downloads | |
805 * Faking of the HTTP methods PUT and DELETE | |
806 | |
807 | |
808 Version 0.5.1 (2013/04/17) | |
809 ========================== | |
810 | |
811 * Support of RGB images | |
812 * Fix of store SCU in release builds | |
813 * Possibility to store the SQLite index at another place than the | |
814 DICOM instances (for performance) | |
815 | |
816 | |
817 Version 0.5.0 (2013/01/31) | |
818 ========================== | |
819 | |
820 Major changes | |
821 ------------- | |
822 | |
823 * Download of modified or anonymized DICOM instances | |
824 * Inplace modification and anonymization of DICOM series, studies and patients | |
825 | |
826 Minor changes | |
827 ------------- | |
828 | |
829 * Support of private tags | |
830 * Implementation of the PMSCT_RLE1 image decoding for Philips modalities | |
831 * Generation of random DICOM UID through the REST API (/tools/generate-uid) | |
832 | |
833 | |
834 Version 0.4.0 (2012/12/14) | |
835 ========================== | |
836 | |
837 Major changes | |
838 ------------- | |
839 | |
840 * Recycling of disk space | |
841 * Raw access to the value of the DICOM tags in the REST API | |
842 | |
843 Minor changes | |
844 ------------- | |
845 | |
846 * Protection of patients against recycling (also in Orthanc Explorer) | |
847 * The DICOM dictionaries are embedded in Windows builds | |
848 | |
849 | |
850 Version 0.3.1 (2012/12/05) | |
851 ========================== | |
852 | |
853 * Download archives of patients, studies and series as ZIP files | |
854 * Orthanc now checks the version of its database schema before starting | |
855 | |
856 | |
857 Version 0.3.0 (2012/11/30) | |
858 ========================== | |
859 | |
860 Major changes | |
861 ------------- | |
862 | |
863 * Transparent compression of the DICOM instances on the disk | |
864 * The patient/study/series/instances are now indexed by SHA-1 digests | |
865 of their DICOM Instance IDs (and not by UUIDs anymore): The same | |
866 DICOM objects are thus always identified by the same Orthanc IDs | |
867 * Log of exported instances through DICOM C-STORE SCU ("/exported" URI) | |
868 * Full refactoring of the DB schema and of the REST API | |
869 * Introduction of generic classes for REST APIs (in Core/RestApi) | |
870 | |
871 Minor changes | |
872 ------------- | |
873 | |
874 * "/statistics" URI | |
875 * "last" flag to retrieve the last change from the "/changes" URI | |
876 * Generate a sample configuration file from command line | |
877 * "CompletedSeries" event in the changes API | |
878 * Thread to continuously flush DB to disk (SQLite checkpoints for | |
879 improved robustness) | |
880 | |
881 | |
882 Version 0.2.3 (2012/10/26) | |
883 ========================== | |
884 | |
885 * Use HTTP Content-Disposition to set a filename when downloading JSON/DCM | |
886 * URI "/system" for general information about Orthanc | |
887 * Versioning info and help on the command line | |
888 * Improved logging | |
889 * Possibility of dynamic linking against jsoncpp, sqlite, boost and dmctk | |
890 for Debian packaging | |
891 * Fix some bugs | |
892 * Switch to default 8042 port for HTTP | |
893 | |
894 | |
895 Version 0.2.2 (2012/10/04) | |
896 ========================== | |
897 | |
898 * Switch to Google Log | |
899 * Fixes to Debian packaging | |
900 | |
901 | |
902 Version 0.2.1 (2012/09/28) | |
903 ========================== | |
904 | |
905 * Status of series | |
906 * Continuous Integration Server is up and running | |
907 * Ready for Debian packaging | |
908 | |
909 | |
910 Version 0.2.0 (2012/09/16) | |
911 ========================== | |
912 | |
913 Major changes | |
914 ------------- | |
915 | |
916 * Renaming to "Orthanc" | |
917 * Focus on security: Support of SSL, HTTP Basic Authentication and | |
918 interdiction of remote access | |
919 * Access to multi-frame images (for nuclear medicine) | |
920 * Access to the raw PNG images (in 8bpp and 16bpp) | |
921 | |
922 Minor changes | |
923 ------------- | |
924 | |
925 * Change of the licensing of the "Core/SQLite" folder to BSD (to | |
926 reflect the original licensing terms of Chromium, from which the | |
927 code derives) | |
928 * Standalone build for cross-compilation | |
929 | |
930 | |
931 Version 0.1.1 (2012/07/20) | |
932 ========================== | |
933 | |
934 * Fix Windows version | |
935 * Native Windows build with Microsoft Visual Studio 2005 | |
936 * Add path to storage in Configuration.json | |
937 | |
938 | |
939 Version 0.1.0 (2012/07/19) | |
940 ========================== | |
941 | |
942 * Initial release |