1# Version 0.8.1 2 3- Fix deque steal race condition. (#726) 4- Add `Stealer::len` method. (#708) 5 6# Version 0.8.0 7 8- Bump the minimum supported Rust version to 1.36. 9- Add `Worker::len()` and `Injector::len()` methods. 10- Add `std` (enabled by default) feature for forward compatibility. 11 12# Version 0.7.3 13 14- Stop stealing from the same deque. (#448) 15- Fix unsoundness issues by adopting `MaybeUninit`. (#458) 16 17# Version 0.7.2 18 19- Bump `crossbeam-epoch` to `0.8`. 20- Bump `crossbeam-utils` to `0.7`. 21 22# Version 0.7.1 23 24- Bump the minimum required version of `crossbeam-utils`. 25 26# Version 0.7.0 27 28- Make `Worker::pop()` faster in the FIFO case. 29- Replace `fifo()` nad `lifo()` with `Worker::new_fifo()` and `Worker::new_lifo()`. 30- Add more batched steal methods. 31- Introduce `Injector<T>`, a MPMC queue. 32- Rename `Steal::Data` to `Steal::Success`. 33- Add `Steal::or_else()` and implement `FromIterator` for `Steal`. 34- Add `#[must_use]` to `Steal`. 35 36# Version 0.6.3 37 38- Bump `crossbeam-epoch` to `0.7`. 39 40# Version 0.6.2 41 42- Update `crosbeam-utils` to `0.6`. 43 44# Version 0.6.1 45 46- Change a few `Relaxed` orderings to `Release` in order to fix false positives by tsan. 47 48# Version 0.6.0 49 50- Add `Stealer::steal_many` for batched stealing. 51- Change the return type of `pop` to `Pop<T>` so that spinning can be handled manually. 52 53# Version 0.5.2 54 55- Update `crossbeam-utils` to `0.5.0`. 56 57# Version 0.5.1 58 59- Minor optimizations. 60 61# Version 0.5.0 62 63- Add two deque constructors : `fifo()` and `lifo()`. 64- Update `rand` to `0.5.3`. 65- Rename `Deque` to `Worker`. 66- Return `Option<T>` from `Stealer::steal`. 67- Remove methods `Deque::len` and `Stealer::len`. 68- Remove method `Deque::stealer`. 69- Remove method `Deque::steal`. 70 71# Version 0.4.1 72 73- Update `crossbeam-epoch` to `0.5.0`. 74 75# Version 0.4.0 76 77- Update `crossbeam-epoch` to `0.4.2`. 78- Update `crossbeam-utils` to `0.4.0`. 79- Require minimum Rust version 1.25. 80 81# Version 0.3.1 82 83- Add `Deque::capacity`. 84- Add `Deque::min_capacity`. 85- Add `Deque::shrink_to_fit`. 86- Update `crossbeam-epoch` to `0.3.0`. 87- Support Rust 1.20. 88- Shrink the buffer in `Deque::push` if necessary. 89 90# Version 0.3.0 91 92- Update `crossbeam-epoch` to `0.4.0`. 93- Drop support for Rust 1.13. 94 95# Version 0.2.0 96 97- Update `crossbeam-epoch` to `0.3.0`. 98- Support Rust 1.13. 99 100# Version 0.1.1 101 102- Update `crossbeam-epoch` to `0.2.0`. 103 104# Version 0.1.0 105 106- First implementation of the Chase-Lev deque. 107