NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
crates.io · #140 most downloaded on crates.io
Securely clear secrets from memory with a simple trait built on stable Rust primitives which guarantee memory is zeroed using an operation will not be 'optimized away' by the compiler. Uses a portable pure Rust implementation that works everywhere, even WASM!
Last release today
06 Oct 2026
Release timing varies
gaps range from 3 weeks to 1.3 years
Nearly every release is documented
notes for 20 of 20 stable releases
27 versions withdrawn
withdrawn after publishing
8 years old
47 releases · first in 2018
Replace Zeroizing 's derived Debug with opaque impl
One column per quarter.
Zeroizing is now repr(transparent)
Zeroizing is now repr(transparent) (#1253)optimization_barrier function (#1261)Zeroizing now supports ?Sized (#1318)zeroize_stack function (#1331)Switch from doc_auto_cfg to doc_cfg ([#1228])
doc_auto_cfg to doc_cfg (#1228)Feature-gate AVX-512 support under simd; restores MSRV 1.60 ([#1073])
simd; restores MSRV 1.60 (#1073)NOTE: yanked due concerns over the MSRV bump. See [#1067].
### Changed - Bump MSRV to 1.60 ([#900])
NOTE: yanked because [#900] bumped MSRV to 1.60, which vioates our MSRV policy.
Impl Zeroize for core::Wrapping ([#818])
Optional serde support ([#780])
serde support (#780)Factor integration tests into tests/ ([#771])
Impl Zeroize for std::CString ([#759])
Nightly-only support for zeroizing ARM64 SIMD registers ([#749])
Deriving ZeroizeOnDrop on DerefMut ([#739])
ZeroizeOnDrop on DerefMut (#739)Ambiguous method for AssertZeroizeOnDrop ([#725])
AssertZeroizeOnDrop (#725)Double mut on AssertZeroizeOnDrop ([#719])
mut on AssertZeroizeOnDrop (#719)Zeroize impls for PhantomData, PhantomPinned, and tuples with 0-10 elements ([#660])
Nothing published for this version
Moved to RustCrypto/utils repository
Zeroize for NonZeroXRustCrypto/utils repository### Added - Derive Default on Zeroizing
Default on ZeroizingImplement Zeroize for [MaybeUninit ]
[MaybeUninit<Z>]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.
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.
Zeroize for [Z; N]; MSRV 1.51Zeroizing::clone_from now zeroizes the destination before cloningClear residual space within Option
Zeroize for Box<[Z]>OptionOption is None when zeroizedZeroize support for x86(-64) SIMD registers
Zeroize support for x86(-64) SIMD registersString::zeroizezeroize entire capacity of String
doc_cfgStringVec- Add TryZeroize trait - Add From impl for Zeroizing - Remove bytes-preview feature
TryZeroize traitFrom<Z: Zeroize> impl for Zeroizing<Z>bytes-preview featurezeroize_derive: Remove legacy no_drop attribute support
no_drop attribute supportbytes feature to bytes-previewZeroize trait bounds for VecClone, Debug, and Eq for ZeroizingLoosen Vec trait bounds for Zeroize
Vec trait bounds for Zeroize(Optionally) Impl Zeroize for Bytes and BytesMut
Zeroize for Bytes and BytesMutDeprecate #[zeroize(no_drop)] attribute
Barring unforeseen circumstances, this release aims to be the last 0.x
release prior to a zeroize 1.0 release.
zeroize_derive Cargo feature by defaultstd feature in favor of alloc; MSRV 1.36+#[zeroize(no_drop)] attributeproc-macro2, quote, and syn cratesImproved attribute parser; fixes nightly build
README.md: add Gitter badges; update image links
- Impl Zeroize for Option
Zeroize for Option<Z: Zeroize>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 explici
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.
Zeroize instead of DefaultIsZeroeszeroize(drop) or zeroize(no_drop) attributes when deriving
Zeroize .Impl Drop by default when deriving Zeroize
Drop by default when deriving ZeroizeUse synstructure for custom derive
DefaultIsZeroesnightly featureZeroizing<Z> to zeroize values on dropAdd ZeroizeOnDrop marker trait + custom derive
ZeroizeZeroizeWithDefault to DefaultIsZeroesAdd debug_assert! to ensure string interiors are zeroized
debug_assert! to ensure string interiors are zeroizedAvoid re-exporting the whole prelude
This release is a rewrite which replaces FFI bindings to OS-specific APIs with a pure Rust solution.
This release is a rewrite which replaces FFI bindings to OS-specific APIs with a pure Rust solution.
core::sync::atomic fencescore::ptr::write_volatileFix ldd scraper for older glibc versions
- Support musl-libc
Impl Zeroize trait on concrete types
Zeroize trait on concrete typesReplace secure_zero_memory with Zeroize
secure_zero_memory with Zeroize- Add Zeroize trait
Zeroize trait- README.md: Fix intrinsic links
- Documentation improvements
- Initial release
Your coding agent can read these notes before it upgrades. Set up the MCP server →