Releases: Enet4/dicom-rs
v0.8.0
DICOM-rs 0.8.0
This is a major release of DICOM-rs, boasting an ample collection of new capabilities. Highlights are async support for network applications (via Tokio), and support for a bunch of new transfer syntaxes, including the brand new one for JPEG XL!
Images in JPEG-LS, High Throughput JPEG 2000 (HTJ2K), and JPEG XL can now be decoded, and pixel data can be encoded to JPEG-LS and JPEG XL Lossless.
Changes
- A minimal Rust compiler version policy is now implemented (#587 @qarmin)
- 1.72.0 is the minimum version supported by all library crates with the default features. Binary crates or additional features may affect compatibility and require a more recent version of the compiler.
- [ul,storescp,storescu] New async implementation of
dicom_ul
, with application in toolsdicom-storescu
anddicom-storescp
. (#542 @naterichman)- While the association API for synchronous I/O has not changed. there were breaking changes in the isolated PDU reading functions.
- [encoding] The expected behavior of pixel data decoding for single sample per pixel images was clarified (#593)
- [dictionary-std] Updated tags and uids (#578,#594)
- A few tag keywords have changed from the upstream source.
New
- [ts-registry] Support for JPEG-LS image decoding via CharLS (#534 @dougyau)
- [ts-registry] High-Throughput JPEG 2000 (HTJ2K) transfer syntaxes with decoding support via OpenJPEG (#499)
- [ts-registry] JPEG XL transfer syntaxes with native support for decoding via jxl-oxide and encoding via zune-jpegxl (#571)
- [ts-registry] JPEG-LS pixel data encoder via CharLS (#573)
- [ul] Add connection timeout (#569,#570 @jmlaka)
- [object] New method
FileDicomObject::update_meta
(#572) - [pixeldata] Add support for pixel-first planar configuration (#575 @abustany)
- [fromimage] Add
--encapsulate
option to encase a file in a DICOM object without converting it to native pixel data (#579) - [parser] Add configurable strategy for handling odd length data elements (#567)
- [object] Constructive operations through the attribute operations API now create nested sequences recursively, so that intermediate sequence elements do not have to be created first (#574)
Fixes
- [core] Require DICOM times to encode with the given precision even for 0 microseconds (#557)
- [object] Adjust file meta information group length calculation (#566)
- [pixeldata] Fix discrepancy between multi and single frame
decode_pixel_data
in GDCM integration (#562 @thomas-tribus) - [pixeldata] Update meta information group length in
dicom-transcode
output (#572) - [ul] Fix issues around
dicom_ul::get_client_pdu
(#590) - [scpproxy] Tweak handling of connection closed event (#590)
- Fix documentation and dictionary typos found via codespell (#558 @DimitriPapadopoulos)
Enhancements
Miscellaneous
- [parser] Recover API compatibility (#583)
- [ul] Rework API (#582,#592)
- [object,ul] Update implementation class UID and version name (#584,#591)
- Clippy linting (#580,#586)
π¦ Updated crates
dicom-core
0.8.0dicom-dictionary-std
0.8.0dicom-encoding
0.8.0dicom-parser
0.8.0dicom-transfer-syntax-registry
0.8.0dicom-ul
0.8.0dicom-scpproxy
0.8.0dicom-object
0.8.0dicom-json
0.8.0dicom-dump
0.8.0dicom-pixeldata
0.8.0dicom-echoscu
0.8.0dicom-storescu
0.8.0dicom-storescp
0.8.0dicom-findscu
0.8.0dicom-toimage
0.8.0dicom-fromimage
0.8.0dicom-dictionary-builder
0.8.0dicom
0.8.0
π Thanks
A word of thanks to the new DICOM-rs contributors @DimitriPapadopoulos and @abustany.
And one more word of thanks to veteran contributors @naterichman for bringing async network support to the ecosystem, and @dougyau for the integration with CharLS, which enabled JPEG-LS support.
Full Changelog: v0.7.1...v0.8.0
v0.7.1
DICOM-rs 0.7.1
This release comes primarily with several bug fixes, but a few new features were added as well.
New
- [toimage]
dicom-toimage
now offers basic image conversion in bulk (#518 @PierreBou91) - [core] Improved value ergonomics and performance of
TryFrom
around date/time types (#526) - [ul] Add read/write timeout options for
ClientAssociation
(#530 @naterichman) - [findscu] Add
--query-file
command line argument (#529) - [dump]
dicom-dump
can now output DICOM JSON with--format json
(#440 @naterichman)
Fixes
- [findscu] Fix PData reading for better conformity with Harmony worklist servers (#528 @qarmin)
- [pixeldata] Fix conditional compilation in tests with RLE encoded images (#525)
- [pixeldata] Fix error when decoding data without VoiLut with GDCM (#514 @dougyau)
- [storescu] prefer file's transfer syntax (#520 @PierreBou91)
- [toimage] Fix error reporting without
--fail-first
(#539) - [parser] Check presence of value byte in Pixel Representation value (#545)
- [json] Raise a recoverable error when trying to serialize encapsulated pixel data (#546)
- [parser] Turn illegal item header parse into recoverable error (#548)
- [pixeldata] Default to
None
if VOI LUT is not present (#536 @dougyau) - [ul] Use only odd presentation context IDs (#552 @naterichman)
- [ts-registry] simplify JPEG single frame decoding and increase resilience in the JPEG adapter (#535 #549)
Enhancements
- [object] Infer Media Storage SOP Class UID and Media Storage SOP Instance UID from the SOP Class UID and SOP Instance UID when missing (#541 @chrisbll971)
Miscellaneous
- General Clippy lint fix (#531)
- [image] Tweak
toimage
for usability and accessibility (#532) - Dependency updates (#533)
π¦ Updated crates
dicom-core
0.7.1dicom-encoding
0.7.1dicom-parser
0.7.1dicom-transfer-syntax-registry
0.7.1dicom-ul
0.7.1dicom-object
0.7.1dicom-json
0.7.1dicom-dump
0.7.1dicom-pixeldata
0.7.1dicom-storescu
0.7.1dicom-findscu
0.7.1dicom-toimage
0.7.1dicom
0.7.1
π Thanks
With version 0.7.1, I thank and welcome @qarmin and @chrisbll971 to the list of contributors to DICOM-rs.
Full Changelog: v0.7.0...v0.7.1
v0.7.0
DICOM-rs 0.7.0
Today a major edition of DICOM-rs is released. Version 0.7.0 encompasses a new array of changes to correct existing quirks in the API and make way for grater capabilities. It is also not without new features, improvements and a few bug fixes.
Changes
- [core,dictionary-builder] Data element dictionary entries now provide a
VirtualVr
instead of a specific value representation (#478) - [core] DICOM date/time value types were revamped to optionally include the time zone offset, affecting function signatures around it (#453 @jmlaka)
- [encoding]
SpecificCharacterSet
is now an opaque struct type instead of an enum (#489) - [encoding] Monochrome reinterpretation for pixel data readers was relaxed to no longer require converting monochrome1 to monochrome2 (#498)
- [encoding]
PixelDataObject
trait now has methodphotometric_interpretation
(#497) - [ul]
Pdu
is now aware of user identity negotiation variables (#402 @nicholasrussell) - [ul]
Pdu::short_description
now returns animpl Display
(#488) - [parser] Parser
IntoTokens
trait was expanded to support options, namely whether to discard sequence lengths (#456) - [object] Missing type parameter in
FileMetaTable::set_transfer_syntax
was added to conform withTransferSyntax
type parameters (#485) - [pixeldata]
openjp2
is no longer added by default when usingdicom-pixeldata
. Users interested in JPEG 2000 need to enable eitheropenjp2
oropenjpeg-sys
(#449) - Updated
snafu
to 0.8 (#450) - Removed contents which were already deprecated in previous versions (#458)
New
- [ul] Add Promiscuous mode in server association options (#500 @nickamzol)
- [parser] add
::new_with_ts
functions (#494) - [object] New functionality for mutating an object's element values at an arbitrary attribute (#471 @naterichman)
- [object] Add method for changing an object's character set (#456 @thomas-tribus)
- [object] Baseline capability for private element look-up and insertion is now available (#508 @naterichman)
- [storescp] Update CLI app arguments to include promiscuous mode (#510)
Fixes
- [parser] Correct VR interpretation dependent on Pixel Representation (#462 @thomas-tribus)
- [findscu] Fix nonconforming status matching in response objects (#481)
- [ul] Fix docs in ClientAssociation (#484)
Enhancements
- [dictionary-std] Update dictionary entries (#509)
- [ts-registry] Fix pixel sample rearrangement in RLE lossless (#496)
- [ts-registry] Improved JPEG encoding attribute hinting (#497)
- [ts-registry] Bump jpeg2k to 0.7 (#502, #506)
- [pixeldata] Add lookups into shared/per frame functional groups (#437 @naterichman)
- [pixeldata] Trim
\0
characters from photometric interpretation (#451 @dougyau) - [pixeldata] Update gdcm-rs to 0.6 (#468)
- [pixeldata,toimage,fromimage] Update image lib (#491 @leonz)
- [json] Allow arbitrary element order for
JsonDataElement
(#459 @feliwir) - [json] Allow null for string values (#464 @feliwir)
- [json] Skip bulk data URI when deserializing JSON (#472 @feliwir)
- [parent] Re-export more Cargo features from pixeldata (#469)
- [storescp] Handle
Pdu::AbortRQ
(#474 @jennydaman) - [storescp] Improve storescp to handle multiple p-data values (#487)
Miscellaneous
- [ts-registry] Bump jpeg2k dependency (#502)
- [json] Update base64 to 0.22 (#467)
- [dump] Remove term_size in favor of terminal_size (#466)
- [storescp] Replace hard-coded UIDs in transfer.rs with
dicom_dictionary_std::uids::-
(#475 @jennydaman) - [dictionary-builder] update heck to 0.5 (#495)
- Code cleanup (beta toolchain checks) (#482)
- Bump eyre from 0.6.9 to 0.6.12 (#492)
- Maintenance lint fixes (#505)
- Dependency updates (#507)
π¦ Updated crates
Starting from this release, all crates with breaking changes will have their version set to the project version. For instance, rather than bumping dicom-pixeldata
from 0.2.2 to 0.3.0, it will be set to 0.7.0.
This is to reduce the confusion of certain crates in the ecosystem appearing to be outdated when they are not, as well as to better clarify which versions are expected to be compatible with which crate in the ecosystem.
dicom-core
0.7.0dicom-dictionary-std
0.7.0dicom-encoding
0.7.0dicom-parser
0.7.0dicom-transfer-syntax-registry
0.7.0dicom-ul
0.7.0dicom-scpproxy
0.7.0dicom-object
0.7.0dicom-dump
0.7.0dicom-json
0.7.0dicom-pixeldata
0.7.0dicom-echoscu
0.7.0dicom-storescu
0.7.0dicom-storescp
0.7.0dicom-findscu
0.7.0dicom-toimage
0.7.0dicom-fromimage
0.7.0dicom-dictionary-builder
0.7.0dicom
0.7.0
π Thanks
Acknowledging that DICOM-rs can only grow at this pace with the active collaboration from the community, it is worth highlighting that version 0.7.0 had the highest number of new contributors in a DICOM-rs release yet.
Thank you all!
Full Changelog: v0.6.3...v0.7.0
v0.6.3
DICOM-rs 0.6.3
This patch release intends to fix and mitigate some issues found in the previous version.
One particular concern raised since version 0.6.2 was that the project does not build when targeting Windows platforms unless the Cargo features are adjusted to exclude openjp2
.
While fixing this entirely would incur a breaking change too early in the project's release cycle, this patch release will hopefully help guide Windows developers into building all crates in the DICOM-rs ecosystem, until the next major version arrives.
If your building target is any of the Windows platforms (such as x86_64-pc-windows-msvc
or x86_64-pc-windows-gnu
), you will need to disable the default Cargo features and explicitly add the ones that you may need. The default_windows
feature has been added for convenience.
cargo build --release --no-default-features --features=cli,default_windows,backtraces,openjpeg-sys
Fixes
- [pixeldata] Fix and improve single-frame pixel data decoding via GDCM (#422 @dougyau)
- [findscu] Add response status check in C-FIND-RSP response data set (#434)
Enhancements
- [json] Move
dicom-test-files
to dev dependencies (#435) - [dump] Extend
no_text_limit
option to more textual VRs (#436)
Miscellaneous
- [transfer-syntax-registry,pixeldata] Adjust features for easier building on Windows (#433)
- [dump] Update owo-colors to 0.4.0-rc.1 (#441)
- [core,object] Update dependencies, general maintenance (#442)
π¦ Updated crates
dicom-core
0.6.3dicom-transfer-syntax-registry
0.6.2dicom-object
0.6.3dicom-dump
0.6.2dicom-pixeldata
0.2.2dicom-findscu
0.2.2dicom-json
0.1.1dicom
0.6.3
Full Changelog: v0.6.2...v0.6.3
v0.6.2
DICOM-rs 0.6.2
This feature release of DICOM-rs comprises new APIs, a new CLI tool, and support for more transfer syntaxes, plus a few bug fixes.
New
- [pixeldata] Add transcoder API in
dicom_pixeldata::transcode
: pick a target transfer syntax to convert a DICOM object (#408) - New CLI tool
dicom-transcode
lets you transcode DICOM files to other transfer syntaxes (#408) - [storescu]
dicom-storescu
will now try to transcode files which are not accepted by the SCP in their original transfer syntax, by decoding the pixel data. If this is unwanted, include the option--never-transcode
(#408) - Add JPEG 2000 decoding support (#425)
- Add methods to decode a single frame via the object pixel data decoding API (#421)
- [toimage] Implement
--unwrap
option, to extract pixel data from a file without decoding it (#416) - [transfer-syntax-registry/pixeldata] Add support for Encapsulated Uncompressed Explicit VR Little Endian (#423)
- New methods and actions are available for truncating DICOM values (#418)
- Add
DecodedPixelData::to_owned
and implementClone
forDecodedPixelData
(#419)
Fixes
- [core] Handle leap second from
chrono
time types correctly (#428) - [ul] Fix SCP transfer syntax negotiation quirk (#417)
- [object] Update group length when setting transfer syntax (#410)
- [transfer-syntax-registry] Fix padding skipping in multiframe JPEG decoding (#414)
Enhancements
- [dictionary-std] Update data element dictionary (#429)
- [toimage] Add "openexr" image feature by default (#411)
- [fromimage/transcode] Add implementation class UID/version name override and retain options (#424)
Miscellaneous
- [encoding] Fix default implementations of
PixelDataWriter::encode
andPixelDataReader::decode
raising an error on missing Number of Frames (#408) - [ul] lint fix: unused doc comment (#420)
- [transfer-syntax-registry] Update jpeg-encoder to v0.6 (#426)
- Project maintenance (#427)
- Tweak
dicom-transfer-syntax-registry
documentation and readme (#430)
π¦ Updated crates
dicom-core
0.6.2dicom-encoding
0.6.1dicom-dictionary-std
0.6.1dicom-ul
0.5.1dicom-transfer-syntax-registry
0.6.1dicom-object
0.6.2dicom-pixeldata
0.2.1dicom-storescp
0.2.2dicom-storescu
0.3.2dicom-toimage
0.2.2dicom-fromimage
0.2.2dicom
0.6.2
π οΈ New tools
dicom-transcode
(indicom-pixeldata
)
Full Changelog: v0.6.1...v0.6.2
v0.6.1
DICOM-rs 0.6.1
This is a patch release intended to solve a case where the automatic preamble detector would panic when trying to load files which are too small.
Updating the library crates and tools once possible is highly recommended.
Fixes
Miscellaneous
π¦ Updated crates
dicom-object
0.6.1dicom-dump
0.6.1dicom-storescu
0.3.1dicom-findscu
0.2.1dicom-toimage
0.2.1dicom-fromimage
0.2.1dicom-storescp
0.2.1dicom
0.6.1
π Acknowledgements
Thank you @DerOrfa for reporting the bug and fixing it in #405.
Full Changelog: dicom-core-v0.6.1...v0.6.1
dicom-core-v0.6.1
dicom-core 0.6.1
This patch release brings a fix to the pixel data fragments API, released in 0.6.0 with a bug that could prevent some DICOM readers from reading multi-frame images. Be sure to cargo update
when possible.
Fixes
- Fix basic offset table generation for encapsulated data resulting in an extra offset record (#399 @dougyau)
π¦ Updated crate
dicom-core
0.6.1
π Acknowledgement
The new pixel data fragment API was brought to DICOM-rs by @dougyau, who also contributed with this fix.
Full Changelog: v0.6.0...dicom-core-v0.6.1
DICOM-rs 0.6.0
A new milestone has arrived for DICOM-rs! Version 0.6.0 brings a wide assortment of much needed changes and an interesting array of features! In the spotlight we have a new API for attribute selection and manipulation, a redesigned pixel data adapter API, constants for normative UIDs, DICOM JSON support, an SOP Class dictionary, and many new useful conversions and methods for a better development experience.
Changes
- Pixel data adapters were moved from
encoding
totransfer-syntax-registry
(#251) - [transfer-syntax-registry] Pixel data adapters in transfer syntax registry are now available behind Cargo features (#328)
- [pixeldata] Specific capabilities have also been feature-gated:
image
,ndarray
,rayon
(#238) - [dictionary-std] Update tag dictionary from DCMTK, with some breaking changes (#302)
- [dictionary-builder] The tool was moved to
devtools
, and now also supports DICOM UID dictionaries (#372) - [pixeldata] Require
Send
+Sync
forpixeldata::Error
(#323) - [core] several changes were made to
DicomValue
for ergonomics (#353, #376, #390)- Type parameter
P
(inDicomValue
and inDataElement
) now has a default ofVec<u8>
, which is more convenient DicomValue
now uses independent sequence typesDataSetSequence
andPixelFragmentSequence
- Changed
PartialEq
implementation ofDicomValue
between data set items, which now ignores the items' recorded length - Fixed the error type returned for some of the conversion methods
- Type parameter
- [parser]
LazyDataSetReader::next
has been renamed toadvance
(#342) - [object] Error types have been split for more efficiency (#344)
- [ul] PDU association variants and association types have been changed for more versatility (#345)
- [core] Some type name changes in the
dictionary
module were made (#372)- Primarily to make room for other kinds of dictionaries
- [core] Impls
PartialEq<[u16; 2]>
andPartialEq<(u16, u16)>
forTag
were removed (#389)- Developers should prefer converting
u16
pairs to aTag
first.
- Developers should prefer converting
- [ul] Corrected
AbortRQServiceProviderReason
(#282)
New
- [core] Extend value retrieval API for encapsulated pixel data (#339)
- [core] Added a public
prelude
module for an assortment of types users are likely to import (#391) - [core/object] Attribute operations API, to describe operations in data and perform them onto DICOM data sets (#326, #360, #383)
- Attribute operations include
Set
,SetIfMissing
,Replace
,Remove
,PushStr
, and many more. - Attribute selector API enables selecting elements at an arbitrary data set nesting.
- Attribute operations include
- [object] New
value_at
method to get values at an arbitrary data set nesting (#394) - [pixeldata] New
encapsulation
module helps build encapsulated pixel data (#312 @dougyau) - [core/dictionary] SOP class dictionary (#372, #379)
- [dictionary] normative UID constant declarations now available in module
uids
(#372) - [storescp] Can now handle C-ECHO requests (#338 @PierreBou91)
- [core]
DataDictionary
trait has been extended with new default methods (#357)parse_tag
extends DICOM tag parsing capabilities to include a look-up by keyword
- [core] Extend value API with mutable accessors (
items_mut
, etc.) (#377) - [core] Extend data element API with an
update_value
method (#377) - [object] New command_from_element_iter constructor functions for DICOM objects (#365)
- [parser] Extend data set reader to support peeking (#342)
- [encoding] Extend transfer_syntax module and re-export
inventory
(#359)- Submitting new transfer syntaxes has been made easier: no need to add
inventory
yourself, more re-exports at crate root, and new macros are available (submit_ele_transfer_syntax!
)
- Submitting new transfer syntaxes has been made easier: no need to add
- [transfer-syntax-registry] Support for encoding to JPEG baseline (#286 @Almeida-a)
Fixes
- [ul] Add
SopClassExtendedNegotiationSubItem
forPdu
(#313 @jmlaka) - [core] Clear leading whitespaces from values with VR DS and IS (#335 @lalberge)
- [pixeldata] Change LUT to discard high bits of pixel data sample inputs (#347)
- [core] Fix using
dicom_value!
withoutsmallvec
import (#366) - [object] Reset length in
InMemDicomObject
toUNDEFINED
after any modification, fixes data set writing errors (#364 @jmlaka) - [findscu] Do not override Query/Retrieve Level when specified by the user (#385)
- [transfer-syntax-registry] Fix RLE decoding in cases where number of samples > 1 (#393)
Enhancements
- Update
inventory
to 0.3 (#272) - [core] Strings can now be converted directly to
DicomValue
(#377) - [dump] Fix and improve pixel sequence printing in
dicom-dump
(#340) - [object] Detect the presence of a file preamble with
ReadPreamble::Auto
(#354) - Support parsing strings in the form "ggggeeee" to a DICOM
Tag
(#363)- This form is often used in DICOM JSON
- [dictionary-std] Data element dictionary now recognizes group length tags and private creator tags (#367, #370)
- [dictionary-std] Update documentation and implementation (#367)
- [dicom]
dicom_dump
has been added to the parent crate (#369) - [dicom] new extended documentation containing a guided overview of the DICOM-rs library (#369, #386)
- [dump] further sanitize control characters in value summary (#371)
- [object] Optimize size of
WithMetaError
(#374) - [echoscu] Improve output in verbose mode (#384)
- [findscu] Now supports nested attributes in C-FIND query construction (#387)
- [findscu] Add support for modality worklist information model (#381)
Miscellaneous
- Update rstest to 0.16 (#327)
- Update all CLI tools to Clap v4 (#249)
- [dump] Replace
colored
withowo-colors
(#328) - [object] Remove pixeldata module from
dicom-object
crate (#318) - [core] Remove unused util module (#331)
- [pixeldata] Fix rustc warning at
DecodedPixelData::frame_data
(#332) - Update Cargo.lock files (#341, #358)
- Clippy lint fix (2023-06) (#355)
- [core] Remove default Cargo features from
chrono
(#356) - [core] Fix documentation in value module (#375)
- Update implementation class & version for DICOM-rs 0.6 (#380)
- Clippy lint fix (2023-07, pre-0.6) (#395)
- Update itertools to v0.11 (#396)
π¦ New crates
dicom-json
0.1.0
π¦ Updated crates
dicom-core
0.6.0dicom-encoding
0.6.0dicom-dictionary-std
0.6.0dicom-parser
0.6.0dicom-transfer-syntax-registry
0.6.0dicom-ul
0.5.0dicom-scpproxy
0.5.0dicom-object
0.6.0dicom-dump
0.6.0dicom-pixeldata
0.2.0dicom
0.6.0dicom-echoscu
0.3.0dicom-storescu
0.3.0dicom-storescp
0.2.0dicom-findscu
0.2.0dicom-toimage
0.2.0dicom-fromimage
0.2.0dicom-dictionary-builder
0.4.0
π New Contributors
A warm thank you to new contributors @dougyau for #312, @lalberge (for #335), @PierreBou91 for #338, and @Almeida-a for #286.
New Website
DICOM-rs has a new website, primarily to serve as a nicer-looking flair to the project with a quick pitch on what it contains and what it can do. More ideas to improve it are on the way! Feel free to reach out on Zulip or discussions to provide feedback on this website. The site's full source code is also available.
Full Changelog: v0.5.4...v0.6.0
dicom-core-v0.5.4
dicom-core 0.5.4
This is a single-crate update to publish a bug fix plus a few minor features and improvements.
New
- [core] New utility methods are available in
DicomValue
andDataElement
for retrieving pixel data fragments and offset tables. (#339)
Fixes
Miscellaneous
- [core] Remove unused
util
module (#331)
π¦ Updated crates
dicom-core
0.5.4
v0.5.4
DICOM-rs 0.5.4
A new minor iteration of the DICOM-rs project is here!
Although fewer API extensions are included this time, it comes with bug fixes, efficiency improvements, and various dependency updates, making it highly recommended for users to update once possible.
Changes
image
andjpeg-decoder
have been updated to their latest versions, v0.24.5 and v0.3.0 respectively (#315)- [pixeldata] Removed
ndarray-stats
as a dependency, as it was not really being used internally (#305)
New
- [core] New methods are available in
PrimitiveValue
for extending an existing value with more elements. See for example the documentation ofPrimitiveValue::extend_str
(#304)
Fixes
- [core] [parser] Fixed flaws in textual value encoding with in-memory time representations (#309)
- [parser] Elements with the DS or IS value representation are now written as text, even if the primitive value underneath was composed of numbers in binary form (#314)
- [findscu] Fixed typo affecting presentation context negotiation (#307 @jmlaka)
Enhancements
- [pixeldata] The stack memory size of error types have been significantly shrunk:
GetAttributeError
went from 168 bytes down to potentially 64 bytes with backtraces (#317) - [pixeldata] Updated
gdcm-rs
to v0.5.0 (#322)
Miscellaneous
- Updated CI workflow to no longer use unmaintained actions (#316)
- Replaced deprecated
chrono
calls (#310 @jmlaka) - [dictionary-builder] [parser] [storescp] [storescu] General Clippy lint fixing (#320)
- Removed .travis.yml (#321)
π¦ Updated crates
dicom-core
0.5.3dicom-encoding
0.5.3dicom-parser
0.5.3dicom-ul
0.4.4dicom-object
0.5.4dicom-dump
0.5.4dicom-findscu
0.1.1dicom-storescu
0.2.3dicom-storescp
0.1.1dicom-pixeldata
0.1.5dicom-toimage
0.1.3dicom-fromimage
0.1.3dicom
0.5.4dicom-dictionary-builder
0.3.2
Full Changelog: v0.5.3...v0.5.4