All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
hazmatfeature that exposesFieldElementtype (#279)
- Edition changed to 2024 and MSRV bumped to 1.85 (#228)
- Relax MSRV policy and allow MSRV bumps in patch releases
- Replace
polyval_force_softwithpolyval_backend="soft"(#259) - Use
cpubitscrate forsoftbackend selection (#261) - Bump
cpufeaturesto v0.3 (#292) - Use Reduction/Field algorithm for parallel block processing on
aarch64/x86(_64)(#294) polyval::mulxmoved toFieldElement::mulx(#296)- Update to
universal-hashv0.6 (#310)
cfg(polyval_armv8)- now enabled by default (#214)
- add
new_with_init_block(#195)
- implement Karatsuba multiplication for arm64 (#181)
- Support for
polyval_armv8on Rust 1.61+ (#179)
- Impl
Reset(#157)
- Remove
sse4.1from CPU feature requirements for PCLMUL backend (#143) - Relax
zeroizeconstraints (#147) - Upgrade to Rust 2021 edition (#147)
- Use stable
aarch64_target_feature(#154) - Replace
armv8/force-softfeatures withcfgattributes (#159) - Bump
universal-hashto v0.5 (#155, #162)
- Pin
zeroizedependency to v1.3 (#134)
- Nightly-only ARMv8 intrinsics support gated under the
armv8feature (#126)
mulxfeature: now always built-in (#118)
- Use
u128to implmulx(#111)
- CLMUL detection (#92)
KEY_SIZEconstant (#82)
- Bump
cfg-iffrom v0.1 to v1.0.0 (#86)
- Performance improvements (#75)
- Bump
universal-hashdependency to v0.4; MSRV 1.41 (#52, #57) - Rename
resultmethods to tofinalize(#56)
- Constant-time 32-bit software implementation (#39)
- Use
cfg-ifcrate to reduce duplication (#40)
- Upgrade to
zeroize1.0 (#33)
- Remove
pubfromfieldmodule (#28)
- Upgrade to
universal-hashcrate v0.3 (#22)
- Upgrade to
zeroizev1.0.0-pre (#19)
- Constant time software implementation (#7)
- Update to Rust 2018 edition (#3)
- Use
UniversalHashtrait (#6) - Removed generics/traits from
field::ElementAPI (#12)
insecure-softcargo feature (#7)
- Initial release