Entries are listed in reverse chronological order.
- Add constant-timedness note to the documentation for
CtOption::unwrap_or_else
. - Add
CtOption::expect
. - Add
ConstantTimeEq::ct_ne
with default implementation. - Add new
core_hint_black_box
feature from Diane Hosfelt and Amber Sprenkels which utilises the originalblack_box
functionality from when subtle was first written, which has now found it's way into the Rust standard library. - Add new
const-generics
feature from @survived which adds support for subtle traits for generic arrays[T; N]
. - Add new feature for supporting
core::cmp::Ordering
for types which implement subtle traits, patch from @tarcieri. - Update
rand
dependency to 0.8.
- Fix a bug in how the README was included in the documentation builds which caused nightly builds to break.
- Add new
ConstantTimeGreater
andConstantTimeLess
traits, as well as implementations for unsigned integers, by @isislovecruft.
- Add
impl ConstantTimeEq for Choice
by @tarcieri. - Add
impl From<CtOption<T>> for Option<T>
by @CPerezz. This is useful for handling library code that producesCtOption
s in contexts where timing doesn't matter. - Introduce an MSRV policy.
- Remove the
nightly
-only asm-basedblack_box
barrier in favor of the volatile-based one, fixing compilation on current nightlies.
- Update README.md to clarify that 2.2 and above do not require the
nightly
feature.
- Adds an
or_else
combinator forCtOption
, by @ebfull. - Optimized
black_box
fornightly
, by @jethrogb. - Optimized
black_box
forstable
, by @dsprenkels. - Fixed CI for
no_std
, by @dsprenkels. - Fixed fuzz target compilation, by @3for.
- Error during
cargo publish
, yanked.
- Adds the "crypto" tag to crate metadata.
- New shorter, more efficient ct_eq() for integers, contributed by Thomas Pornin.
- Adds a new
CtOption<T>
which acts as a constant-timeOption<T>
(thanks to @ebfull for the implementation). Choice
now itself implementsConditionallySelectable
.
- Stable version with traits reworked from 1.0.0 to interact better with the orphan rules.