# Changelog
This document records the changes made between versions, starting with version 0.5.0
# After 0.8.0 (Current)
# After 0.7.3
* Add initial compression support
* **Breaking** Refactor modules to reflect that this is now also a compression library
# After 0.7.2
* Soundness fix in decoding::RingBuffer. The lengths of the diferent regions where sometimes calculated wrongly, resulting in reads of heap memory not belonging to that ringbuffer
* Fixed by https://github.com/paolobarbolini
* Affected versions: 0.7.0 up to and including 0.7.2
* Added convenience functions to FrameDecoder to decode multiple frames from a buffer (https://github.com/philipc)
# After 0.7.1
* Remove byteorder dependency (https://github.com/workingjubilee)
* Preparations to become a std dependency (https://github.com/workingjubilee)
# After 0.7.0
* Fix for drain_to functions into limited targets (https://github.com/michaelkirk)
# After 0.6.0
* Small fix in the zstd binary, progress tracking was slighty off for skippable frames resulting in an error only when the last frame in a file was skippable
* Small performance improvement by reorganizing code with `#[cold]` annotations
* Documentation for `StreamDecoder` mentioning the limitations around multiple frames (https://github.com/Sorseg)
* Documentation around skippable frames (https://github.com/Sorseg)
* **Breaking** `StreamDecoder` API changes to get access to the inner parts (https://github.com/ifd3f)
* Big internal documentation contribution (https://github.com/zleyyij)
* Dropped derive_more as a dependency (https://github.com/xd009642)
* Small improvement by removing the error cases from the reverse bitreader (and making sure invalid requests can't even happen)
# After 0.5.0
* Make the hashing checksum optional (thanks to [@tamird](https://github.com/tamird))
* breaking change as the public API changes based on features
* The FrameDecoder is now Send + Sync (RingBuffer impls these traits now)