Skip to content

Commit d7daa56

Browse files
Fill changelog for 0.4.0
1 parent e7853b6 commit d7daa56

File tree

1 file changed

+20
-0
lines changed

1 file changed

+20
-0
lines changed

CHANGELOG.md

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,26 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0.
66

77
## [Unreleased]
88

9+
## [0.4.0] - 2022-04-09
10+
### Changed
11+
- **Breaking**: the minimal supported Rust version (MSRV) is now 1.60
12+
13+
- Use `cfg(target_has_atomic)` to conditionally disable some impls. Previously,
14+
the whole crate just failed to compile on targets like `thumbv7em-none-eabi`,
15+
as `AtomicU64` is not available there. Now it compiles, but there is no
16+
`Atom` impl for `u64` or `f64`, for example. This is not yet an optimal
17+
solution, as platform support for atomics is not just differentiated by size,
18+
but also by whether they support some features. Sadly, for those, there are
19+
no `cfg` flags available on stable yet.
20+
21+
- Relax `derive` for structs by only requiring `Atom` for the inner field, not
22+
`PrimitiveAtom`.
23+
24+
- Derive macro uses `syn`, `quote` and `proc-macro2` in version 1.x now. This is
25+
semantically irrelevant for you, but might remove the pre-1.x versions of
26+
these crates from your dependency graph if atomig was the last to use them.
27+
28+
929
## [0.3.3] - 2021-12-30
1030
### Changed
1131
- This library is now `no_std` compatible. All paths to `std` items were replaced by `core`.

0 commit comments

Comments
 (0)