Compression support
This release adds initial support for compressing data into the zstd format. This enables interoperability with workflows that require payloads to be encoded with zstd all in pure rust, no C dependencies needed.
API changes
The public API of the crate has been reorganized and cleaned up. Since there is now also encoding support the root couldn't really be used for structures used to decode data.
Errors
Decoding errors now live in their own module ruzstd::decoding::errors
. This enabled hiding a lot of the internal modules and by that decluttering the docs.
Decoders
The FrameDecoder
and StreamingDecoder
are now found in ruzstd::decoding
instead of the root of the namespace. This is because there is now the new ruzstd::encoding
module which contains the FrameCompressor
as well as the compress
/compress_to_vec
convenience functions.