]> git.proxmox.com Git - rustc.git/blame - vendor/crossbeam-utils/CHANGELOG.md
New upstream version 1.67.1+dfsg1
[rustc.git] / vendor / crossbeam-utils / CHANGELOG.md
CommitLineData
487cf647
FG
1# Version 0.8.14
2
3- Fix build script bug introduced in 0.8.13. (#932)
4
5# Version 0.8.13
6
7**Note:** This release has been yanked due to regression fixed in 0.8.14.
8
9- Improve support for custom targets. (#922)
10
2b03887a
FG
11# Version 0.8.12
12
13- Removes the dependency on the `once_cell` crate to restore the MSRV. (#913)
14- Work around [rust-lang#98302](https://github.com/rust-lang/rust/issues/98302), which causes compile error on windows-gnu when LTO is enabled. (#913)
15
f2b60f7d
FG
16# Version 0.8.11
17
18- Bump the minimum supported Rust version to 1.38. (#877)
19
064997fb
FG
20# Version 0.8.10
21
22- Fix unsoundness of `AtomicCell` on types containing niches. (#834)
23 This fix contains breaking changes, but they are allowed because this is a soundness bug fix. See #834 for more.
24
25# Version 0.8.9
26
27- Replace lazy_static with once_cell. (#817)
28
5e7ed085
FG
29# Version 0.8.8
30
31- Fix a bug when unstable `loom` support is enabled. (#787)
32
5099ac24
FG
33# Version 0.8.7
34
35- Add `AtomicCell<{i*,u*}>::{fetch_max,fetch_min}`. (#785)
36- Add `AtomicCell<{i*,u*,bool}>::fetch_nand`. (#785)
37- Fix unsoundness of `AtomicCell<{i,u}64>` arithmetics on 32-bit targets that support `Atomic{I,U}64` (#781)
38
39# Version 0.8.6
40
064997fb 41**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 42
5099ac24
FG
43- Re-add `AtomicCell<{i,u}64>::{fetch_add,fetch_sub,fetch_and,fetch_or,fetch_xor}` that were accidentally removed in 0.8.0 on targets that do not support `Atomic{I,U}64`. (#767)
44- Re-add `AtomicCell<{i,u}128>::{fetch_add,fetch_sub,fetch_and,fetch_or,fetch_xor}` that were accidentally removed in 0.8.0. (#767)
45
17df50a5
XL
46# Version 0.8.5
47
064997fb 48**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 49
5099ac24
FG
50- Add `AtomicCell::fetch_update`. (#704)
51- Support targets that do not have atomic CAS on stable Rust. (#698)
17df50a5
XL
52
53# Version 0.8.4
54
064997fb 55**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 56
17df50a5
XL
57- Bump `loom` dependency to version 0.5. (#686)
58
6a06907d
XL
59# Version 0.8.3
60
064997fb 61**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 62
6a06907d
XL
63- Make `loom` dependency optional. (#666)
64
65# Version 0.8.2
66
064997fb 67**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 68
6a06907d
XL
69- Deprecate `AtomicCell::compare_and_swap`. Use `AtomicCell::compare_exchange` instead. (#619)
70- Add `Parker::park_deadline`. (#563)
71- Improve implementation of `CachePadded`. (#636)
72- Add unstable support for `loom`. (#487)
73
5869c6ff
XL
74# Version 0.8.1
75
064997fb 76**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 77
5869c6ff
XL
78- Make `AtomicCell::is_lock_free` always const fn. (#600)
79- Fix a bug in `seq_lock_wide`. (#596)
80- Remove `const_fn` dependency. (#600)
81- `crossbeam-utils` no longer fails to compile if unable to determine rustc version. Instead, it now displays a warning. (#604)
82
83# Version 0.8.0
84
064997fb 85**Note:** This release has been yanked. See [GHSA-qc84-gqf4-9926](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-qc84-gqf4-9926) for details.
5e7ed085 86
5869c6ff 87- Bump the minimum supported Rust version to 1.36.
6a06907d 88- Remove deprecated `AtomicCell::get_mut()` and `Backoff::is_complete()` methods.
5869c6ff
XL
89- Remove `alloc` feature.
90- Make `CachePadded::new()` const function.
91- Make `AtomicCell::is_lock_free()` const function at 1.46+.
92- Implement `From<T>` for `AtomicCell<T>`.
93
94# Version 0.7.2
95
96- Fix bug in release (yanking 0.7.1)
97
98# Version 0.7.1
99
100- Bump `autocfg` dependency to version 1.0. (#460)
101- Make `AtomicCell` lockfree for u8, u16, u32, u64 sized values at 1.34+. (#454)
102
103# Version 0.7.0
104
105- Bump the minimum required version to 1.28.
106- Fix breakage with nightly feature due to rust-lang/rust#65214.
107- Apply `#[repr(transparent)]` to `AtomicCell`.
108- Make `AtomicCell::new()` const function at 1.31+.
109
110# Version 0.6.6
111
112- Add `UnwindSafe` and `RefUnwindSafe` impls for `AtomicCell`.
113- Add `AtomicCell::as_ptr()`.
114- Add `AtomicCell::take()`.
115- Fix a bug in `AtomicCell::compare_exchange()` and `AtomicCell::compare_and_swap()`.
116- Various documentation improvements.
117
118# Version 0.6.5
119
120- Rename `Backoff::is_complete()` to `Backoff::is_completed()`.
121
122# Version 0.6.4
123
124- Add `WaitGroup`, `ShardedLock`, and `Backoff`.
125- Add `fetch_*` methods for `AtomicCell<i128>` and `AtomicCell<u128>`.
126- Expand documentation.
127
128# Version 0.6.3
129
130- Add `AtomicCell`.
131- Improve documentation.
132
133# Version 0.6.2
134
135- Add `Parker`.
136- Improve documentation.
137
138# Version 0.6.1
139
140- Fix a soundness bug in `Scope::spawn()`.
141- Remove the `T: 'scope` bound on `ScopedJoinHandle`.
142
143# Version 0.6.0
144
145- Move `AtomicConsume` to `atomic` module.
146- `scope()` returns a `Result` of thread joins.
147- Remove `spawn_unchecked`.
148- Fix a soundness bug due to incorrect lifetimes.
149- Improve documentation.
150- Support nested scoped spawns.
151- Implement `Copy`, `Hash`, `PartialEq`, and `Eq` for `CachePadded`.
152- Add `CachePadded::into_inner()`.
153
154# Version 0.5.0
155
156- Reorganize sub-modules and rename functions.
157
158# Version 0.4.1
159
160- Fix a documentation link.
161
162# Version 0.4.0
163
164- `CachePadded` supports types bigger than 64 bytes.
165- Fix a bug in scoped threads where unitialized memory was being dropped.
166- Minimum required Rust version is now 1.25.
167
168# Version 0.3.2
169
170- Mark `load_consume` with `#[inline]`.
171
172# Version 0.3.1
173
174- `load_consume` on ARM and AArch64.
175
176# Version 0.3.0
177
178- Add `join` for scoped thread API.
179- Add `load_consume` for atomic load-consume memory ordering.
180- Remove `AtomicOption`.
181
182# Version 0.2.2
183
184- Support Rust 1.12.1.
185- Call `T::clone` when cloning a `CachePadded<T>`.
186
187# Version 0.2.1
188
189- Add `use_std` feature.
190
191# Version 0.2.0
192
193- Add `nightly` feature.
194- Use `repr(align(64))` on `CachePadded` with the `nightly` feature.
195- Implement `Drop` for `CachePadded<T>`.
196- Implement `Clone` for `CachePadded<T>`.
197- Implement `From<T>` for `CachePadded<T>`.
198- Implement better `Debug` for `CachePadded<T>`.
199- Write more tests.
200- Add this changelog.
201- Change cache line length to 64 bytes.
202- Remove `ZerosValid`.
203
204# Version 0.1.0
205
206- Old implementation of `CachePadded` from `crossbeam` version 0.3.0