- Update minimum supported Rust version: 1.40.0 -> 1.50.0.
- Update dependencies (#78):
byteorder
: ^1.0.0 -> 1.4.3crc
: ^1.0.0 -> 3.0.0log
: ^0.4.14 -> 0.4.17env_logger
: ^0.8.3 -> 0.9.0
- Expose a new
raw_decoder
API (#74). - Reduce the number of allocations (#77).
- Display features on rustdoc (#70).
- Configure formatting style to
imports_granularity = "Module"
(#82). - Add code coverage reporting (#86).
- Update minimum supported Rust version: 1.32.0 -> 1.40.0.
- Update dependencies:
log
: ^0.4.8 -> ^0.4.14env_logger
: 0.7.1 -> ^0.8.3
- [Breaking change] Rename acronyms to be lowercase, following clippy::upper-case-acronyms.
- [Breaking change] Add a memory limit option (#50).
- Fix bug in LZMA2 decompression (#61).
- Fix bug in CRC32 validation (#56).
- Add a streaming mode for LZMA decompression, gated by the
stream
feature. - Add more fuzzing targets, including comparison with the
xz2
crate. - Various improvements: benchmarks, fix lint warnings.
- Migrate from Travis-CI to GitHub Actions.
- Minimum supported Rust version: 1.32.0.
- Update dependencies:
log
: ^0.4.0 -> ^0.4.8env_logger
: 0.6.0 -> ^0.7.1
- Gate logging behind an opt-in feature. This improves decoding performance by ~25% (#31).
- Lazily allocate the circular buffer (#22). This improves memory usage (especially for WebAssembly targets) at the expense of a ~5% performance regression (#27).
- Return an error instead of panicking on unsupported SHA-256 checksum for XZ decoding (#40).
- Add Clippy to CI.
- Document public APIs.
- Deny missing docs, missing Debug implementations and build warnings.
- Forbid unsafe code.
- Remove extern statements that are unnecessary on the 2018 edition.
- Fix bug in the range coder (#15).
- Add support for specifying the unpacked size outside of the header (#17).
- Migrate to Rust 2018 edition.
- Add benchmarks.
- Fix some Clippy warnings.
- Upgrade
env_logger
dependency. - Refactoring to use
std::io::Take
, operator?
.
- Initial release.