6.2 KiB
6.2 KiB
Version 0.8.14
- Fix build script bug introduced in 0.8.13. (#932)
Version 0.8.13
Note: This release has been yanked due to regression fixed in 0.8.14.
- Improve support for custom targets. (#922)
Version 0.8.12
- Removes the dependency on the
once_cellcrate to restore the MSRV. (#913) - Work around rust-lang#98302, which causes compile error on windows-gnu when LTO is enabled. (#913)
Version 0.8.11
- Bump the minimum supported Rust version to 1.38. (#877)
Version 0.8.10
- Fix unsoundness of
AtomicCellon types containing niches. (#834) This fix contains breaking changes, but they are allowed because this is a soundness bug fix. See #834 for more.
Version 0.8.9
- Replace lazy_static with once_cell. (#817)
Version 0.8.8
- Fix a bug when unstable
loomsupport is enabled. (#787)
Version 0.8.7
- Add
AtomicCell<{i*,u*}>::{fetch_max,fetch_min}. (#785) - Add
AtomicCell<{i*,u*,bool}>::fetch_nand. (#785) - Fix unsoundness of
AtomicCell<{i,u}64>arithmetics on 32-bit targets that supportAtomic{I,U}64(#781)
Version 0.8.6
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- 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 supportAtomic{I,U}64. (#767) - 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)
Version 0.8.5
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Add
AtomicCell::fetch_update. (#704) - Support targets that do not have atomic CAS on stable Rust. (#698)
Version 0.8.4
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Bump
loomdependency to version 0.5. (#686)
Version 0.8.3
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Make
loomdependency optional. (#666)
Version 0.8.2
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Deprecate
AtomicCell::compare_and_swap. UseAtomicCell::compare_exchangeinstead. (#619) - Add
Parker::park_deadline. (#563) - Improve implementation of
CachePadded. (#636) - Add unstable support for
loom. (#487)
Version 0.8.1
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Make
AtomicCell::is_lock_freealways const fn. (#600) - Fix a bug in
seq_lock_wide. (#596) - Remove
const_fndependency. (#600) crossbeam-utilsno longer fails to compile if unable to determine rustc version. Instead, it now displays a warning. (#604)
Version 0.8.0
Note: This release has been yanked. See GHSA-qc84-gqf4-9926 for details.
- Bump the minimum supported Rust version to 1.36.
- Remove deprecated
AtomicCell::get_mut()andBackoff::is_complete()methods. - Remove
allocfeature. - Make
CachePadded::new()const function. - Make
AtomicCell::is_lock_free()const function at 1.46+. - Implement
From<T>forAtomicCell<T>.
Version 0.7.2
- Fix bug in release (yanking 0.7.1)
Version 0.7.1
- Bump
autocfgdependency to version 1.0. (#460) - Make
AtomicCelllockfree for u8, u16, u32, u64 sized values at 1.34+. (#454)
Version 0.7.0
- Bump the minimum required version to 1.28.
- Fix breakage with nightly feature due to rust-lang/rust#65214.
- Apply
#[repr(transparent)]toAtomicCell. - Make
AtomicCell::new()const function at 1.31+.
Version 0.6.6
- Add
UnwindSafeandRefUnwindSafeimpls forAtomicCell. - Add
AtomicCell::as_ptr(). - Add
AtomicCell::take(). - Fix a bug in
AtomicCell::compare_exchange()andAtomicCell::compare_and_swap(). - Various documentation improvements.
Version 0.6.5
- Rename
Backoff::is_complete()toBackoff::is_completed().
Version 0.6.4
- Add
WaitGroup,ShardedLock, andBackoff. - Add
fetch_*methods forAtomicCell<i128>andAtomicCell<u128>. - Expand documentation.
Version 0.6.3
- Add
AtomicCell. - Improve documentation.
Version 0.6.2
- Add
Parker. - Improve documentation.
Version 0.6.1
- Fix a soundness bug in
Scope::spawn(). - Remove the
T: 'scopebound onScopedJoinHandle.
Version 0.6.0
- Move
AtomicConsumetoatomicmodule. scope()returns aResultof thread joins.- Remove
spawn_unchecked. - Fix a soundness bug due to incorrect lifetimes.
- Improve documentation.
- Support nested scoped spawns.
- Implement
Copy,Hash,PartialEq, andEqforCachePadded. - Add
CachePadded::into_inner().
Version 0.5.0
- Reorganize sub-modules and rename functions.
Version 0.4.1
- Fix a documentation link.
Version 0.4.0
CachePaddedsupports types bigger than 64 bytes.- Fix a bug in scoped threads where unitialized memory was being dropped.
- Minimum required Rust version is now 1.25.
Version 0.3.2
- Mark
load_consumewith#[inline].
Version 0.3.1
load_consumeon ARM and AArch64.
Version 0.3.0
- Add
joinfor scoped thread API. - Add
load_consumefor atomic load-consume memory ordering. - Remove
AtomicOption.
Version 0.2.2
- Support Rust 1.12.1.
- Call
T::clonewhen cloning aCachePadded<T>.
Version 0.2.1
- Add
use_stdfeature.
Version 0.2.0
- Add
nightlyfeature. - Use
repr(align(64))onCachePaddedwith thenightlyfeature. - Implement
DropforCachePadded<T>. - Implement
CloneforCachePadded<T>. - Implement
From<T>forCachePadded<T>. - Implement better
DebugforCachePadded<T>. - Write more tests.
- Add this changelog.
- Change cache line length to 64 bytes.
- Remove
ZerosValid.
Version 0.1.0
- Old implementation of
CachePaddedfromcrossbeamversion 0.3.0