6.5 KiB
Changelog
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.
1.7.0 (2023-11-16)
Changed
- Bump MSRV to 1.60 (#900)
1.6.1 (2023-11-15) [YANKED]
NOTE: yanked because #900 bumped MSRV to 1.60, which vioates our MSRV policy.
Added
- Impl
ZeroizeforMaybeUninit(#900)
Removed
- Unnecessary
cfgs on SIMD type impls (#930)
1.6.0 (2023-03-26)
Added
Changed
- 2021 edition upgrade; MSRV 1.56 (#869)
1.5.7 (2022-07-20)
Added
- Optional
serdesupport (#780)
1.5.6 (2022-06-29)
Added
Changed
- Factor integration tests into
tests/(#771)
1.5.5 (2022-04-30)
Added
1.5.4 (2022-03-16)
Added
- Nightly-only upport for zeroizing ARM64 SIMD registers (#749)
1.5.3 (2022-02-25)
Fixed
- Deriving
ZeroizeOnDroponDerefMut(#739)
1.5.2 (2022-01-31) [YANKED]
Fixed
- Ambiguous method for
AssertZeroizeOnDrop(#725)
1.5.1 (2022-01-27) [YANKED]
Fixed
- Double
mutonAssertZeroizeOnDrop(#719)
1.5.0 (2022-01-14) [YANKED]
Added
Zeroizeimpls forPhantomData,PhantomPinned, and tuples with 0-10 elements (#660)#[zeroize(bound = "T: MyTrait")](#663)ZeroizeOnDroptrait and custom derive (#699, #700, #703)
1.4.3 (2021-11-04)
Added
- Implement
ZeroizeforNonZeroX
Changed
- Moved to
RustCrypto/utilsrepository
1.4.2 (2021-09-21)
Added
- Derive
DefaultonZeroizing
1.4.1 (2021-07-20)
Added
- Implement Zeroize for
[MaybeUninit<Z>]
1.4.0 (2021-07-18)
NOTE: This release includes an MSRV bump to Rust 1.51. Please use zeroize = "1.3.0"
if you would like to support older Rust versions.
Added
- Use const generics to impl
Zeroizefor[Z; N]; MSRV 1.51 Zeroizing::clone_fromnow zeroizes the destination before cloning
1.3.0 (2021-04-19)
Added
- impl
ZeroizeforBox<[Z]> - Clear residual space within `Option
Changed
- Ensure
OptionisNonewhen zeroized - Bump MSRV to 1.47
1.2.0 (2020-12-09)
Added
Zeroizesupport for x86(_64) SIMD registers
Changed
- Simplify
String::zeroize - MSRV 1.44+
1.1.1 (2020-09-15)
- Add
doc_cfg - zeroize entire capacity of
String - zeroize entire capacity of
Vec
1.1.0 (2019-12-02)
- Add
TryZeroizetrait - Add
From<Z: Zeroize>impl forZeroizing<Z> - Remove
bytes-previewfeature
1.0.0 (2019-10-13)
- Initial 1.0 release 🎉
- zeroize_derive: Remove legacy
no_dropattribute support - Rename
bytesfeature tobytes-preview - Further relax
Zeroizetrait bounds forVec - Derive
Clone,Debug, andEqforZeroizing
1.0.0-pre (2019-09-30)
- Loosen
Vectrait bounds forZeroize
0.10.1 (2019-09-03)
- (Optionally) Impl
ZeroizeforBytesandBytesMut
0.10.0 (2019-08-19)
Barring unforeseen circumstances, this release aims to be the last 0.x
release prior to a zeroize 1.0 release.
- Disable
zeroize_deriveCargo feature by default - Remove
stdfeature in favor ofalloc; MSRV 1.36+ - Deprecate
#[zeroize(no_drop)]attribute - Use 1.0
proc-macro2,quote, andsyncrates
0.9.3 (2019-07-27)
- Improved attribute parser; fixes nightly build
0.9.2 (2019-06-28)
- README.md: add Gitter badges; update image links
0.9.1 (2019-06-04)
- Impl
ZeroizeforOption<Z: Zeroize>
0.9.0 (2019-06-04)
NOTICE: This release changes the default behavior of derive(Zeroize)
to no longer derive a Drop impl. If you wish to derive Drop, you must
now explicitly add a #[zeroize(drop)] attribute on the type for which you
are deriving Zeroize.
- Remove CPU fences
- Remove scary language about undefined behavior
- Bound blanket array impls on
Zeroizeinstead ofDefaultIsZeroes - Require
zeroize(drop)orzeroize(no_drop)attributes when derivingZeroize. - Support stablized 'alloc' crate
0.8.0 (2019-05-20)
- Impl
Dropby default when derivingZeroize
0.7.0 (2019-05-19)
- Use synstructure for custom derive
- Add explicit array impls for
DefaultIsZeroes - Remove
nightlyfeature - Add
Zeroizing<Z>to zeroize values on drop
0.6.0 (2019-03-23)
- Add ZeroizeOnDrop marker trait + custom derive
- Custom derive support for
Zeroize - Rename
ZeroizeWithDefaulttoDefaultIsZeroes
0.5.2 (2018-12-25)
- Add
debug_assert!to ensure string interiors are zeroized
0.5.1 (2018-12-24)
- Avoid re-exporting the whole prelude
0.5.0 (2018-12-24)
This release is a rewrite which replaces FFI bindings to OS-specific APIs with a pure Rust solution.
- Use
core::sync::atomicfences - Test wasm target
- Rewrite using
core::ptr::write_volatile
0.4.2 (2018-10-12)
- Fix ldd scraper for older glibc versions
0.4.1 (2018-10-12)
- Support musl-libc
0.4.0 (2018-10-12)
- Impl
Zeroizetrait on concrete types
0.3.0 (2018-10-11)
- Replace
secure_zero_memorywithZeroize
0.2.0 (2018-10-11)
- Add
Zeroizetrait
0.1.2 (2018-10-03)
- README.md: Fix intrinsic links
0.1.1 (2018-10-03)
- Documentation improvements
0.1.0 (2018-10-03)
- Initial release