]>
Commit | Line | Data |
---|---|---|
0a29b90c FG |
1 | # Changelog |
2 | All notable changes to this project will be documented in this file. | |
3 | ||
4 | The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), | |
5 | and 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) | |
97 | NOTE: This release includes an MSRV bump to Rust 1.51. Please use `zeroize = "1.3.0"` | |
98 | if 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) | |
145 | Barring unforeseen circumstances, this release aims to be the last `0.x` | |
146 | release 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)` | |
164 | to no longer derive a `Drop` impl. If you wish to derive `Drop`, you must | |
165 | now explicitly add a `#[zeroize(drop)]` attribute on the type for which you | |
166 | are 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) | |
196 | This release is a rewrite which replaces FFI bindings to OS-specific APIs with | |
197 | a 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 |