227 lines
7.6 KiB
Markdown
227 lines
7.6 KiB
Markdown
# Changelog
|
|
|
|
All notable changes to this project will be documented in this file.
|
|
|
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
|
|
## 0.11.3 (2026-04-03)
|
|
### Added
|
|
- `dev::initialized_mac_test` function ([#2367])
|
|
- `TryCustomizedInit` trait ([#2395])
|
|
|
|
[#2367]: https://github.com/RustCrypto/traits/pull/2367
|
|
[#2395]: https://github.com/RustCrypto/traits/pull/2395
|
|
|
|
## 0.11.2 (2026-03-13)
|
|
### Changed
|
|
- Do not implement `Clone` as part of `(Reset)MacTraits` in the `buffer_fixed!` macro ([#2341])
|
|
- `EagerHash` trait to be a sub-trait of `Clone` ([#2341])
|
|
|
|
[#2341]: https://github.com/RustCrypto/traits/pull/2341
|
|
|
|
## 0.11.1 (2026-02-25) [YANKED]
|
|
Note: this version was yanked because v0.11.2 introduces minor breaking changes
|
|
affecting only pre-release versions of downstream crates.
|
|
|
|
### Added
|
|
- `SmallBlockSizeUser` helper trait. The trait is a sub-trait of `BlockSizeUser`
|
|
with `BlockSize` bounded by `block_buffer::BlockSizes`. ([#2309])
|
|
|
|
### Changed
|
|
- `BufferKindUser` is now a sub-trait of `SmallBlockSizeUser` ([#2309])
|
|
|
|
[#2309]: https://github.com/RustCrypto/traits/pull/2309
|
|
|
|
## 0.11.0 (2026-02-13) [YANKED]
|
|
Note: this version was yanked because v0.11.1 introduces breaking changes.
|
|
Users should migrate to `digest` v0.11.1 and `crypto-common` v0.2.1 using `cargo update`.
|
|
|
|
### Added
|
|
- `CustomizedInit` trait ([#1334])
|
|
- `SerializableState` support ([#1369])
|
|
- `DynDigestWithOid` wrapper trait ([#1390])
|
|
- `VariableOutputCoreCustomized` trait ([#1787], [#2043])
|
|
- `buffer_fixed`, `buffer_ct_variable`, `buffer_rt_variable`, and `buffer_xof` macros ([#1799])
|
|
- `XofFixedWrapper` ([#1815])
|
|
- `CollisionResistance` trait ([#1820])
|
|
- `CoreProxy::compose/decompose` methods ([#1898])
|
|
- `EagerHash` trait ([#2014])
|
|
|
|
### Changed
|
|
- Replaced `generic-array` with `hybrid-array` ([#1358])
|
|
- `crypto-common` dependency bumped to v0.2 ([#1173])
|
|
- Edition changed to 2024 and MSRV bumped to 1.85 ([#1759])
|
|
- Bump `const-oid` dependency to v0.10 ([#1772])
|
|
- `digest::core_api` renamed to `digest::block_api` ([#1799])
|
|
- `CtVariableCoreWrapper` renamed to `CtOutWrapper` ([#1799])
|
|
- Removed the OID type parameter from `CtOutWrapper` ([#1799])
|
|
- Implementations of the `SerializableState` trait ([#1953])
|
|
- `new_test!` and `new_mac_test!` macros ([#1958])
|
|
- Bump `block-buffer` to v0.11 ([#2082])
|
|
- Re-export of `crypto-common` moved to `digest::common` ([#2237])
|
|
- Bump `crypto-common` to v0.2 ([#2276])
|
|
- Replace `subtle` with `ctutils` ([#2301])
|
|
|
|
### Removed
|
|
- `Mac::new`, `Mac::new_from_slice`, and `Mac::generate_key` methods ([#1173])
|
|
- `CoreWrapper`, `RtVariableCoreWrapper`, and `XofReaderCoreWrapper` types ([#1799])
|
|
- `io::Write/Read` implementations in favor of the `digest_io::IoWrapper` type ([#1809])
|
|
- `VariableOutput` trait ([#2043])
|
|
- Implementation of `subtle::ConstantTimeEq` for `CtOutput`. Note that implementation of
|
|
`PartialEq`/`Eq` trait is still const time. ([#2292])
|
|
|
|
[#1173]: https://github.com/RustCrypto/traits/pull/1173
|
|
[#1334]: https://github.com/RustCrypto/traits/pull/1334
|
|
[#1358]: https://github.com/RustCrypto/traits/pull/1358
|
|
[#1369]: https://github.com/RustCrypto/traits/pull/1369
|
|
[#1390]: https://github.com/RustCrypto/traits/pull/1390
|
|
[#1759]: https://github.com/RustCrypto/traits/pull/1759
|
|
[#1772]: https://github.com/RustCrypto/traits/pull/1772
|
|
[#1787]: https://github.com/RustCrypto/traits/pull/1787
|
|
[#1799]: https://github.com/RustCrypto/traits/pull/1799
|
|
[#1809]: https://github.com/RustCrypto/traits/pull/1809
|
|
[#1815]: https://github.com/RustCrypto/traits/pull/1815
|
|
[#1820]: https://github.com/RustCrypto/traits/pull/1820
|
|
[#1898]: https://github.com/RustCrypto/traits/pull/1898
|
|
[#1953]: https://github.com/RustCrypto/traits/pull/1953
|
|
[#1958]: https://github.com/RustCrypto/traits/pull/1958
|
|
[#2014]: https://github.com/RustCrypto/traits/pull/2014
|
|
[#2043]: https://github.com/RustCrypto/traits/pull/2043
|
|
[#2082]: https://github.com/RustCrypto/traits/pull/2082
|
|
[#2237]: https://github.com/RustCrypto/traits/pull/2237
|
|
[#2276]: https://github.com/RustCrypto/traits/pull/2276
|
|
[#2292]: https://github.com/RustCrypto/traits/pull/2292
|
|
[#2301]: https://github.com/RustCrypto/traits/pull/2301
|
|
|
|
## 0.10.7 (2023-05-19)
|
|
### Changed
|
|
- Loosen `subtle` version requirement ([#1260])
|
|
|
|
[#1260]: https://github.com/RustCrypto/traits/pull/1260
|
|
|
|
## 0.10.6 (2022-11-17)
|
|
### Added
|
|
- `Mac::verify_reset` and `Mac::verify_slice_reset` methods ([#1154])
|
|
|
|
[#1154]: https://github.com/RustCrypto/traits/pull/1154
|
|
|
|
## 0.10.5 (2022-09-16)
|
|
### Fixed
|
|
- MSRV build ([#1117])
|
|
|
|
[#1117]: https://github.com/RustCrypto/traits/pull/1117
|
|
|
|
## 0.10.4 (2022-09-16)
|
|
### Added
|
|
- Feature-gated implementation of the `const_oid::AssociatedOid` trait
|
|
for the core wrappers. ([#1098])
|
|
|
|
[#1098]: https://github.com/RustCrypto/traits/pull/1098
|
|
|
|
## 0.10.3 (2022-02-16)
|
|
### Fixed
|
|
- Minimal versions build ([#940])
|
|
|
|
[#940]: https://github.com/RustCrypto/traits/pull/940
|
|
|
|
## 0.10.2 (2022-02-10)
|
|
### Changed
|
|
- Relax bounds on the `Mac` trait ([#849])
|
|
|
|
[#849]: https://github.com/RustCrypto/traits/pull/849
|
|
|
|
## 0.10.1 (2021-12-14) [YANKED]
|
|
### Added
|
|
- `Update::chain` and `Digest::new_with_prefix` methods. ([#846])
|
|
- `Mac::generate_key` method. ([#847])
|
|
|
|
### Fixed
|
|
- Doc cfg attribute for `CtOutput` and `MacError`. ([#842])
|
|
- Expose `KeyInit::generate_key` method in docs. ([#847])
|
|
|
|
[#842]: https://github.com/RustCrypto/traits/pull/842
|
|
[#846]: https://github.com/RustCrypto/traits/pull/846
|
|
[#847]: https://github.com/RustCrypto/traits/pull/847
|
|
|
|
## 0.10.0 (2021-12-07) [YANKED]
|
|
### Changed
|
|
- Dirty traits are removed and instead block-level traits are introduced.
|
|
Variable output traits reworked and now support both run and compile time selection of output size. ([#380], [#819])
|
|
- The `crypto-mac` traits are reworked and merged in. ([#819])
|
|
|
|
[#819]: https://github.com/RustCrypto/traits/pull/819
|
|
[#380]: https://github.com/RustCrypto/traits/pull/380
|
|
|
|
## 0.9.0 (2020-06-09)
|
|
### Added
|
|
- `ExtendableOutputDirty` and `VariableOutputDirty` traits ([#183])
|
|
- `FixedOutputDirty` trait + `finalize_into*` ([#180])
|
|
- `XofReader::read_boxed` method ([#178], [#181], [#182])
|
|
- `alloc` feature ([#163])
|
|
- Re-export `typenum::consts` as `consts` ([#123])
|
|
- `Output` type alias ([#115])
|
|
|
|
### Changed
|
|
- Rename `*result*` methods to `finalize` ala IUF ([#161])
|
|
- Use `impl AsRef<[u8]>` instead of generic params on methods ([#112])
|
|
- Rename `Input::input` to `Update::update` ala IUF ([#111])
|
|
- Upgrade to Rust 2018 edition ([#109])
|
|
- Bump `generic-array` to v0.14 ([#95])
|
|
|
|
[#183]: https://github.com/RustCrypto/traits/pull/183
|
|
[#181]: https://github.com/RustCrypto/traits/pull/181
|
|
[#182]: https://github.com/RustCrypto/traits/pull/182
|
|
[#180]: https://github.com/RustCrypto/traits/pull/180
|
|
[#178]: https://github.com/RustCrypto/traits/pull/178
|
|
[#163]: https://github.com/RustCrypto/traits/pull/163
|
|
[#161]: https://github.com/RustCrypto/traits/pull/161
|
|
[#123]: https://github.com/RustCrypto/traits/pull/123
|
|
[#115]: https://github.com/RustCrypto/traits/pull/115
|
|
[#111]: https://github.com/RustCrypto/traits/pull/111
|
|
[#112]: https://github.com/RustCrypto/traits/pull/112
|
|
[#109]: https://github.com/RustCrypto/traits/pull/109
|
|
[#95]: https://github.com/RustCrypto/traits/pull/95
|
|
|
|
## 0.8.1 (2019-06-30)
|
|
|
|
## 0.8.0 (2018-10-01)
|
|
|
|
## 0.7.6 (2018-09-21)
|
|
|
|
## 0.7.5 (2018-07-13)
|
|
|
|
## 0.7.4 (2018-06-21)
|
|
|
|
## 0.7.3 (2018-06-20)
|
|
|
|
## 0.7.2 (2017-11-17)
|
|
|
|
## 0.7.1 (2017-11-15)
|
|
|
|
## 0.7.0 (2017-11-14)
|
|
|
|
## 0.6.2 (2017-07-24)
|
|
|
|
## 0.6.1 (2017-06-18)
|
|
|
|
## 0.6.0 (2017-06-12)
|
|
|
|
## 0.5.2 (2017-05-02)
|
|
|
|
## 0.5.1 (2017-05-02)
|
|
|
|
## 0.5.0 (2017-04-06)
|
|
|
|
## 0.4.0 (2016-12-24)
|
|
|
|
## 0.3.1 (2016-12-16)
|
|
|
|
## 0.3.0 (2016-11-17)
|
|
|
|
## 0.2.1 (2016-10-14)
|
|
|
|
## 0.2.0 (2016-10-14)
|
|
|
|
## 0.1.0 (2016-10-06)
|