]> git.proxmox.com Git - rustc.git/blame - vendor/zeroize/CHANGELOG.md
New upstream version 1.71.1+dfsg1
[rustc.git] / vendor / zeroize / CHANGELOG.md
CommitLineData
0a29b90c
FG
1# Changelog
2All notable changes to this project will be documented in this file.
3
4The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6
49aad941
FG
7## 1.6.0 (2023-03-26)
8### Added
9- Impl `Zeroize` for `core::num::Wrapping` ([#818])
10- Impl `Zeroize` for `str` and `Box<str>` ([#842])
11
12### Changed
13- 2021 edition upgrade; MSRV 1.56 ([#869])
14
15[#818]: https://github.com/RustCrypto/utils/pull/818
16[#842]: https://github.com/RustCrypto/utils/pull/842
17[#869]: https://github.com/RustCrypto/utils/pull/869
18
0a29b90c
FG
19## 1.5.7 (2022-07-20)
20### Added
21- Optional `serde` support ([#780])
22
23[#780]: https://github.com/RustCrypto/utils/pull/780
24
25## 1.5.6 (2022-06-29)
26### Added
27- `#[inline(always)]` annotations ([#772])
28- `#[ignore]` attribute on flaky CString test ([#776])
29
30### Changed
31- Factor integration tests into `tests/` ([#771])
32
33[#771]: https://github.com/RustCrypto/utils/pull/771
34[#772]: https://github.com/RustCrypto/utils/pull/772
35[#776]: https://github.com/RustCrypto/utils/pull/776
36
37## 1.5.5 (2022-04-30)
38### Added
39- Impl `Zeroize` for std::ffi::CString ([#759])
40- `AsRef<T>` and `AsMut<T>` impls for `Zeroizing` ([#761])
41
42[#759]: https://github.com/RustCrypto/utils/pull/759
43[#761]: https://github.com/RustCrypto/utils/pull/761
44
45## 1.5.4 (2022-03-16)
46### Added
47- Nightly-only upport for zeroizing ARM64 SIMD registers ([#749])
48
49[#749]: https://github.com/RustCrypto/utils/pull/749
50
51## 1.5.3 (2022-02-25)
52### Fixed
53- Deriving `ZeroizeOnDrop` on `DerefMut` ([#739])
54
55[#739]: https://github.com/RustCrypto/utils/pull/739
56
57## 1.5.2 (2022-01-31) [YANKED]
58### Fixed
59- Ambiguous method for `AssertZeroizeOnDrop` ([#725])
60
61[#725]: https://github.com/RustCrypto/utils/pull/725
62
63## 1.5.1 (2022-01-27) [YANKED]
64### Fixed
65- Double `mut` on `AssertZeroizeOnDrop` ([#719])
66
67[#719]: https://github.com/RustCrypto/utils/pull/719
68
69## 1.5.0 (2022-01-14) [YANKED]
70### Added
71- `Zeroize` impls for `PhantomData`, `PhantomPinned`, and tuples with 0-10 elements ([#660])
72- `#[zeroize(bound = "T: MyTrait")]` ([#663])
73- `ZeroizeOnDrop` trait and custom derive ([#699], [#700], [#703])
74
75[#660]: https://github.com/RustCrypto/utils/pull/660
76[#663]: https://github.com/RustCrypto/utils/pull/663
77[#699]: https://github.com/RustCrypto/utils/pull/699
78[#700]: https://github.com/RustCrypto/utils/pull/700
79[#703]: https://github.com/RustCrypto/utils/pull/703
80
81## 1.4.3 (2021-11-04)
82### Added
83- Implement `Zeroize` for `NonZeroX`
84
85### Changed
86- Moved to `RustCrypto/utils` repository
87
88## 1.4.2 (2021-09-21)
89### Added
90- Derive `Default` on `Zeroizing`
91
92## 1.4.1 (2021-07-20)
93### Added
94- Implement Zeroize for `[MaybeUninit<Z>]`
95
96## 1.4.0 (2021-07-18)
97NOTE: This release includes an MSRV bump to Rust 1.51. Please use `zeroize = "1.3.0"`
98if you would like to support older Rust versions.
99
100### Added
101- Use const generics to impl `Zeroize` for `[Z; N]`; MSRV 1.51
102- `Zeroizing::clone_from` now zeroizes the destination before cloning
103
104## 1.3.0 (2021-04-19)
105### Added
106- impl `Zeroize` for `Box<[Z]>`
107- Clear residual space within `Option
108
109### Changed
110- Ensure `Option` is `None` when zeroized
111- Bump MSRV to 1.47
112
113## 1.2.0 (2020-12-09)
114### Added
115- `Zeroize` support for x86(_64) SIMD registers
116
117### Changed
118- Simplify `String::zeroize`
119- MSRV 1.44+
120
121## 1.1.1 (2020-09-15)
122- Add `doc_cfg`
123- zeroize entire capacity of `String`
124- zeroize entire capacity of `Vec`
125
126## 1.1.0 (2019-12-02)
127- Add `TryZeroize` trait
128- Add `From<Z: Zeroize>` impl for `Zeroizing<Z>`
129- Remove `bytes-preview` feature
130
131## 1.0.0 (2019-10-13)
132- Initial 1.0 release 🎉
133- zeroize_derive: Remove legacy `no_drop` attribute support
134- Rename `bytes` feature to `bytes-preview`
135- Further relax `Zeroize` trait bounds for `Vec`
136- Derive `Clone`, `Debug`, and `Eq` for `Zeroizing`
137
138## 1.0.0-pre (2019-09-30)
139- Loosen `Vec` trait bounds for `Zeroize`
140
141## 0.10.1 (2019-09-03)
142- (Optionally) Impl `Zeroize` for `Bytes` and `BytesMut`
143
144## 0.10.0 (2019-08-19)
145Barring unforeseen circumstances, this release aims to be the last `0.x`
146release prior to a `zeroize` 1.0 release.
147
148- Disable `zeroize_derive` Cargo feature by default
149- Remove `std` feature in favor of `alloc`; MSRV 1.36+
150- Deprecate `#[zeroize(no_drop)]` attribute
151- Use 1.0 `proc-macro2`, `quote`, and `syn` crates
152
153## 0.9.3 (2019-07-27)
154- Improved attribute parser; fixes nightly build
155
156## 0.9.2 (2019-06-28)
157- README.md: add Gitter badges; update image links
158
159## 0.9.1 (2019-06-04)
160- Impl `Zeroize` for `Option<Z: Zeroize>`
161
162## 0.9.0 (2019-06-04)
163**NOTICE**: This release changes the default behavior of `derive(Zeroize)`
164to no longer derive a `Drop` impl. If you wish to derive `Drop`, you must
165now explicitly add a `#[zeroize(drop)]` attribute on the type for which you
166are deriving `Zeroize`.
167
168- Remove CPU fences
169- Remove scary language about undefined behavior
170- Bound blanket array impls on `Zeroize` instead of `DefaultIsZeroes`
171- Require `zeroize(drop)` or `zeroize(no_drop)` attributes when deriving
172 `Zeroize` .
173- Support stablized 'alloc' crate
174
175## 0.8.0 (2019-05-20)
176- Impl `Drop` by default when deriving `Zeroize`
177
178## 0.7.0 (2019-05-19)
179- Use synstructure for custom derive
180- Add explicit array impls for `DefaultIsZeroes`
181- Remove `nightly` feature
182- Add `Zeroizing<Z>` to zeroize values on drop
183
184## 0.6.0 (2019-03-23)
185- Add ZeroizeOnDrop marker trait + custom derive
186- Custom derive support for `Zeroize`
187- Rename `ZeroizeWithDefault` to `DefaultIsZeroes`
188
189## 0.5.2 (2018-12-25)
190- Add `debug_assert!` to ensure string interiors are zeroized
191
192## 0.5.1 (2018-12-24)
193- Avoid re-exporting the whole prelude
194
195## 0.5.0 (2018-12-24)
196This release is a rewrite which replaces FFI bindings to OS-specific APIs with
197a pure Rust solution.
198
199- Use `core::sync::atomic` fences
200- Test wasm target
201- Rewrite using `core::ptr::write_volatile`
202
203## 0.4.2 (2018-10-12)
204- Fix ldd scraper for older glibc versions
205
206## 0.4.1 (2018-10-12)
207- Support musl-libc
208
209## 0.4.0 (2018-10-12)
210- Impl `Zeroize` trait on concrete types
211
212## 0.3.0 (2018-10-11)
213- Replace `secure_zero_memory` with `Zeroize`
214
215## 0.2.0 (2018-10-11)
216- Add `Zeroize` trait
217
218## 0.1.2 (2018-10-03)
219- README.md: Fix intrinsic links
220
221## 0.1.1 (2018-10-03)
222- Documentation improvements
223
224## 0.1.0 (2018-10-03)
225- Initial release