| # Version 0.8.4 |
| |
| - Remove dependency on `cfg-if`. (#1072) |
| |
| # Version 0.8.3 |
| |
| - Bump the minimum supported Rust version to 1.61. (#1037) |
| |
| # Version 0.8.2 |
| |
| - Bump the minimum supported Rust version to 1.38. (#877) |
| |
| # Version 0.8.1 |
| |
| - Support targets that do not have atomic CAS on stable Rust (#698) |
| |
| # Version 0.8.0 |
| |
| - Bump the minimum supported Rust version to 1.36. |
| - Bump `crossbeam-channel` to `0.5`. |
| - Bump `crossbeam-deque` to `0.8`. |
| - Bump `crossbeam-epoch` to `0.9`. |
| - Bump `crossbeam-queue` to `0.3`. |
| - Bump `crossbeam-utils` to `0.8`. |
| |
| # Version 0.7.3 |
| |
| - Fix breakage with nightly feature due to rust-lang/rust#65214. |
| - Bump `crossbeam-channel` to `0.4`. |
| - Bump `crossbeam-epoch` to `0.8`. |
| - Bump `crossbeam-queue` to `0.2`. |
| - Bump `crossbeam-utils` to `0.7`. |
| |
| # Version 0.7.2 |
| |
| - Bump `crossbeam-channel` to `0.3.9`. |
| - Bump `crossbeam-epoch` to `0.7.2`. |
| - Bump `crossbeam-utils` to `0.6.6`. |
| |
| # Version 0.7.1 |
| |
| - Bump `crossbeam-utils` to `0.6.5`. |
| |
| # Version 0.7.0 |
| |
| - Remove `ArcCell`, `MsQueue`, and `TreiberStack`. |
| - Change the interface of `ShardedLock` to match `RwLock`. |
| - Add `SegQueue::len()`. |
| - Rename `SegQueue::try_pop()` to `SegQueue::pop()`. |
| - Change the return type of `SegQueue::pop()` to `Result`. |
| - Introduce `ArrayQueue`. |
| - Update dependencies. |
| |
| # Version 0.6.0 |
| |
| - Update dependencies. |
| |
| # Version 0.5.0 |
| |
| - Update `crossbeam-channel` to 0.3. |
| - Update `crossbeam-utils` to 0.6. |
| - Add `AtomicCell`, `SharedLock`, and `WaitGroup`. |
| |
| # Version 0.4.1 |
| |
| - Fix a double-free bug in `MsQueue` and `SegQueue`. |
| |
| # Version 0.4 |
| |
| - Switch to the new implementation of epoch-based reclamation in |
| [`crossbeam-epoch`](https://github.com/crossbeam-rs/crossbeam-epoch), fixing numerous bugs in the |
| old implementation. Its API is changed in a backward-incompatible way. |
| - Switch to the new implementation of `CachePadded` and scoped thread in |
| [`crossbeam-utils`](https://github.com/crossbeam-rs/crossbeam-utils). The scoped thread API is |
| changed in a backward-incompatible way. |
| - Switch to the new implementation of Chase-Lev deque in |
| [`crossbeam-deque`](https://github.com/crossbeam-rs/crossbeam-deque). Its API is changed in a |
| backward-incompatible way. |
| - Export channel implemented in |
| [`crossbeam-channel`](https://github.com/crossbeam-rs/crossbeam-channel). |
| - Remove `AtomicOption`. |
| - Implement `Default` and `From` traits. |
| |
| # Version 0.3 |
| |
| - Introduced `ScopedThreadBuilder` with the ability to name threads and set stack size |
| - `Worker` methods in the Chase-Lev deque don't require mutable access anymore |
| - Fixed a bug when unblocking `pop()` in `MsQueue` |
| - Implemented `Drop` for `MsQueue`, `SegQueue`, and `TreiberStack` |
| - Implemented `Default` for `TreiberStack` |
| - Added `is_empty` to `SegQueue` |
| - Renamed `mem::epoch` to `epoch` |
| - Other bug fixes |
| |
| # Version 0.2 |
| |
| - Changed existing non-blocking `pop` methods to `try_pop` |
| - Added blocking `pop` support to Michael-Scott queue |
| - Added Chase-Lev work-stealing deque |
| |
| # Version 0.1 |
| |
| - Added [epoch-based memory management](http://aturon.github.io/blog/2015/08/27/epoch/) |
| - Added Michael-Scott queue |
| - Added Segmented array queue |