125 lines
3.3 KiB
Markdown
125 lines
3.3 KiB
Markdown
|
# Version 0.8.2
|
||
|
|
||
|
- Bump the minimum supported Rust version to 1.38. (#877)
|
||
|
|
||
|
# Version 0.8.1
|
||
|
|
||
|
- Fix deque steal race condition. (#726)
|
||
|
- Add `Stealer::len` method. (#708)
|
||
|
|
||
|
# Version 0.8.0
|
||
|
|
||
|
**Note:** This release has been yanked. See [GHSA-pqqp-xmhj-wgcw](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-pqqp-xmhj-wgcw) for details.
|
||
|
|
||
|
- Bump the minimum supported Rust version to 1.36.
|
||
|
- Add `Worker::len()` and `Injector::len()` methods.
|
||
|
- Add `std` (enabled by default) feature for forward compatibility.
|
||
|
|
||
|
# Version 0.7.4
|
||
|
|
||
|
- Fix deque steal race condition.
|
||
|
|
||
|
# Version 0.7.3
|
||
|
|
||
|
**Note:** This release has been yanked. See [GHSA-pqqp-xmhj-wgcw](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-pqqp-xmhj-wgcw) for details.
|
||
|
|
||
|
- Stop stealing from the same deque. (#448)
|
||
|
- Fix unsoundness issues by adopting `MaybeUninit`. (#458)
|
||
|
|
||
|
# Version 0.7.2
|
||
|
|
||
|
**Note:** This release has been yanked. See [GHSA-pqqp-xmhj-wgcw](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-pqqp-xmhj-wgcw) for details.
|
||
|
|
||
|
- Bump `crossbeam-epoch` to `0.8`.
|
||
|
- Bump `crossbeam-utils` to `0.7`.
|
||
|
|
||
|
# Version 0.7.1
|
||
|
|
||
|
**Note:** This release has been yanked. See [GHSA-pqqp-xmhj-wgcw](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-pqqp-xmhj-wgcw) for details.
|
||
|
|
||
|
- Bump the minimum required version of `crossbeam-utils`.
|
||
|
|
||
|
# Version 0.7.0
|
||
|
|
||
|
**Note:** This release has been yanked. See [GHSA-pqqp-xmhj-wgcw](https://github.com/crossbeam-rs/crossbeam/security/advisories/GHSA-pqqp-xmhj-wgcw) for details.
|
||
|
|
||
|
- Make `Worker::pop()` faster in the FIFO case.
|
||
|
- Replace `fifo()` nad `lifo()` with `Worker::new_fifo()` and `Worker::new_lifo()`.
|
||
|
- Add more batched steal methods.
|
||
|
- Introduce `Injector<T>`, a MPMC queue.
|
||
|
- Rename `Steal::Data` to `Steal::Success`.
|
||
|
- Add `Steal::or_else()` and implement `FromIterator` for `Steal`.
|
||
|
- Add `#[must_use]` to `Steal`.
|
||
|
|
||
|
# Version 0.6.3
|
||
|
|
||
|
- Bump `crossbeam-epoch` to `0.7`.
|
||
|
|
||
|
# Version 0.6.2
|
||
|
|
||
|
- Update `crosbeam-utils` to `0.6`.
|
||
|
|
||
|
# Version 0.6.1
|
||
|
|
||
|
- Change a few `Relaxed` orderings to `Release` in order to fix false positives by tsan.
|
||
|
|
||
|
# Version 0.6.0
|
||
|
|
||
|
- Add `Stealer::steal_many` for batched stealing.
|
||
|
- Change the return type of `pop` to `Pop<T>` so that spinning can be handled manually.
|
||
|
|
||
|
# Version 0.5.2
|
||
|
|
||
|
- Update `crossbeam-utils` to `0.5.0`.
|
||
|
|
||
|
# Version 0.5.1
|
||
|
|
||
|
- Minor optimizations.
|
||
|
|
||
|
# Version 0.5.0
|
||
|
|
||
|
- Add two deque constructors : `fifo()` and `lifo()`.
|
||
|
- Update `rand` to `0.5.3`.
|
||
|
- Rename `Deque` to `Worker`.
|
||
|
- Return `Option<T>` from `Stealer::steal`.
|
||
|
- Remove methods `Deque::len` and `Stealer::len`.
|
||
|
- Remove method `Deque::stealer`.
|
||
|
- Remove method `Deque::steal`.
|
||
|
|
||
|
# Version 0.4.1
|
||
|
|
||
|
- Update `crossbeam-epoch` to `0.5.0`.
|
||
|
|
||
|
# Version 0.4.0
|
||
|
|
||
|
- Update `crossbeam-epoch` to `0.4.2`.
|
||
|
- Update `crossbeam-utils` to `0.4.0`.
|
||
|
- Require minimum Rust version 1.25.
|
||
|
|
||
|
# Version 0.3.1
|
||
|
|
||
|
- Add `Deque::capacity`.
|
||
|
- Add `Deque::min_capacity`.
|
||
|
- Add `Deque::shrink_to_fit`.
|
||
|
- Update `crossbeam-epoch` to `0.3.0`.
|
||
|
- Support Rust 1.20.
|
||
|
- Shrink the buffer in `Deque::push` if necessary.
|
||
|
|
||
|
# Version 0.3.0
|
||
|
|
||
|
- Update `crossbeam-epoch` to `0.4.0`.
|
||
|
- Drop support for Rust 1.13.
|
||
|
|
||
|
# Version 0.2.0
|
||
|
|
||
|
- Update `crossbeam-epoch` to `0.3.0`.
|
||
|
- Support Rust 1.13.
|
||
|
|
||
|
# Version 0.1.1
|
||
|
|
||
|
- Update `crossbeam-epoch` to `0.2.0`.
|
||
|
|
||
|
# Version 0.1.0
|
||
|
|
||
|
- First implementation of the Chase-Lev deque.
|