Skip to content

Commit 4c7f459

Browse files
secrecy v0.10.0 (#1215)
1 parent 822530c commit 4c7f459

File tree

5 files changed

+47
-4
lines changed

5 files changed

+47
-4
lines changed

Cargo.lock

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

secrecy/CHANGELOG.md

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,49 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## 0.10.0 (2024-09-17)
8+
9+
This release represents a significant redesign of the `secrecy` crate. We will update this section
10+
with upgrade instructions based on feedback from people upgrading, as it's been a long time since
11+
the previous release, and this release includes a number of breaking changes.
12+
13+
The most notable change is the generic `Secret<T>` type has been removed: instead use `SecretBox<T>`
14+
which stores secrets on the heap instead of the stack. Many of the other changes fall out of this
15+
change and things which were previously type aliases of `Secret<T>` are now type aliases of
16+
`SecretBox<T>`.
17+
18+
This unfortunately means this crate no longer has support for "heapless" `no_std` targets. We don't
19+
have a good solution for these targets, which was a motivation for this change in the first place.
20+
21+
### Added
22+
- `SecretBox::{init_with, try_init_with}` ([#1212])
23+
- `SecretBox::init_with_mut` ([#1213])
24+
- `?Sized` bounds for `SecretBox` ([#1213])
25+
- `SecretSlice<T>` ([#1214])
26+
27+
### Changed
28+
- Rust 2021 edition upgrade ([#889])
29+
- MSRV 1.60 ([#1105])
30+
- `SecretBox<T>` is now a newtype rather than a type alias of `Secret<Box<T>> ([#1140])
31+
- `SecretString` is now a type alias for `SecretBox<str>` ([#1213])
32+
- Disable `serde` default features ([#1194])
33+
34+
### Removed
35+
- `alloc` feature: now a hard dependency ([#1140])
36+
- `bytes` crate integration: no replacement ([#1140])
37+
- `DebugSecret` trait: no replacement ([#1140])
38+
- `Secret<T>`: use `SecretBox<T>` instead ([#1140])
39+
40+
[#889]: https://github.com/iqlusioninc/crates/pull/889
41+
[#1105]: https://github.com/iqlusioninc/crates/pull/1105
42+
[#1140]: https://github.com/iqlusioninc/crates/pull/1140
43+
[#1194]: https://github.com/iqlusioninc/crates/pull/1194
44+
[#1212]: https://github.com/iqlusioninc/crates/pull/1212
45+
[#1213]: https://github.com/iqlusioninc/crates/pull/1213
46+
[#1214]: https://github.com/iqlusioninc/crates/pull/1214
47+
48+
## 0.9.0 (Skipped)
49+
750
## 0.8.0 (2021-07-18)
851

952
NOTE: This release includes an MSRV bump to Rust 1.56. Please use `secrecy = "0.7.0"`

secrecy/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ they aren't accidentally copied, logged, or otherwise exposed
66
(as much as possible), and also ensure secrets are securely wiped
77
from memory when dropped.
88
"""
9-
version = "0.9.0-pre.0"
9+
version = "0.10.0"
1010
authors = ["Tony Arcieri <[email protected]>"]
1111
license = "Apache-2.0 OR MIT"
1212
homepage = "https://github.com/iqlusioninc/crates/"

secrecy/LICENSE-MIT

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
MIT License
22

3-
Copyright (c) 2019 iqlusion
3+
Copyright (c) 2019-2024 iqlusion
44

55
Permission is hereby granted, free of charge, to any person obtaining a copy
66
of this software and associated documentation files (the "Software"), to deal

secrecy/README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,7 @@ possible.
4545

4646
## License
4747

48-
Copyright © 2019-2023 iqlusion
48+
Copyright © 2019-2024 iqlusion
4949

5050
**secrecy** is distributed under the terms of either the MIT license
5151
or the Apache License (Version 2.0), at your option.

0 commit comments

Comments
 (0)