1# Version 0.9.14 2 3- Update `memoffset` to 0.8. (#955) 4 5# Version 0.9.13 6 7- Fix build script bug introduced in 0.9.12. (#932) 8 9# Version 0.9.12 10 11**Note:** This release has been yanked due to regression fixed in 0.9.13. 12 13- Update `memoffset` to 0.7. (#926) 14- Improve support for custom targets. (#922) 15 16# Version 0.9.11 17 18- Removes the dependency on the `once_cell` crate to restore the MSRV. (#913) 19- 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) 20 21# Version 0.9.10 22 23- Bump the minimum supported Rust version to 1.38. (#877) 24- Mitigate the risk of segmentation faults in buggy downstream implementations. (#879) 25- Add `{Atomic, Shared}::try_into_owned` (#701) 26 27# Version 0.9.9 28 29- Replace lazy_static with once_cell. (#817) 30 31# Version 0.9.8 32 33- Make `Atomic::null()` const function at 1.61+. (#797) 34 35# Version 0.9.7 36 37- Fix Miri error when `-Zmiri-check-number-validity` is enabled. (#779) 38 39# Version 0.9.6 40 41- Add `Atomic::fetch_update`. (#706) 42 43# Version 0.9.5 44 45- Fix UB in `Pointable` impl of `[MaybeUninit<T>]`. (#694) 46- Support targets that do not have atomic CAS on stable Rust. (#698) 47- Fix breakage with nightly feature due to rust-lang/rust#84510. (#692) 48 49# Version 0.9.4 50 51**Note**: This release has been yanked. See [#693](https://github.com/crossbeam-rs/crossbeam/issues/693) for details. 52 53- Fix UB in `<[MaybeUninit<T>] as Pointable>::init` when global allocator failed allocation. (#690) 54- Bump `loom` dependency to version 0.5. (#686) 55 56# Version 0.9.3 57 58**Note**: This release has been yanked. See [#693](https://github.com/crossbeam-rs/crossbeam/issues/693) for details. 59 60- Make `loom` dependency optional. (#666) 61 62# Version 0.9.2 63 64**Note**: This release has been yanked. See [#693](https://github.com/crossbeam-rs/crossbeam/issues/693) for details. 65 66- Add `Atomic::compare_exchange` and `Atomic::compare_exchange_weak`. (#628) 67- Deprecate `Atomic::compare_and_set` and `Atomic::compare_and_set_weak`. Use `Atomic::compare_exchange` or `Atomic::compare_exchange_weak` instead. (#628) 68- Make `const_fn` dependency optional. (#611) 69- Add unstable support for `loom`. (#487) 70 71# Version 0.9.1 72 73**Note**: This release has been yanked. See [#693](https://github.com/crossbeam-rs/crossbeam/issues/693) for details. 74 75- Bump `memoffset` dependency to version 0.6. (#592) 76 77# Version 0.9.0 78 79**Note**: This release has been yanked. See [#693](https://github.com/crossbeam-rs/crossbeam/issues/693) for details. 80 81- Bump the minimum supported Rust version to 1.36. 82- Support dynamically sized types. 83 84# Version 0.8.2 85 86- Fix bug in release (yanking 0.8.1) 87 88# Version 0.8.1 89 90- Bump `autocfg` dependency to version 1.0. (#460) 91- Reduce stall in list iteration. (#376) 92- Stop stealing from the same deque. (#448) 93- Fix unsoundness issues by adopting `MaybeUninit`. (#458) 94- Fix use-after-free in lock-free queue. (#466) 95 96# Version 0.8.0 97 98- Bump the minimum required version to 1.28. 99- Fix breakage with nightly feature due to rust-lang/rust#65214. 100- Make `Atomic::null()` const function at 1.31+. 101- Bump `crossbeam-utils` to `0.7`. 102 103# Version 0.7.2 104 105- Add `Atomic::into_owned()`. 106- Update `memoffset` dependency. 107 108# Version 0.7.1 109 110- Add `Shared::deref_mut()`. 111- Add a Treiber stack to examples. 112 113# Version 0.7.0 114 115- Remove `Guard::clone()`. 116- Bump dependencies. 117 118# Version 0.6.1 119 120- Update `crossbeam-utils` to `0.6`. 121 122# Version 0.6.0 123 124- `defer` now requires `F: Send + 'static`. 125- Bump the minimum Rust version to 1.26. 126- Pinning while TLS is tearing down does not fail anymore. 127- Rename `Handle` to `LocalHandle`. 128- Add `defer_unchecked` and `defer_destroy`. 129- Remove `Clone` impl for `LocalHandle`. 130 131# Version 0.5.2 132 133- Update `crossbeam-utils` to `0.5`. 134 135# Version 0.5.1 136 137- Fix compatibility with the latest Rust nightly. 138 139# Version 0.5.0 140 141- Update `crossbeam-utils` to `0.4`. 142- Specify the minimum Rust version to `1.25.0`. 143 144# Version 0.4.3 145 146- Downgrade `crossbeam-utils` to `0.3` because it was a breaking change. 147 148# Version 0.4.2 149 150- Expose the `Pointer` trait. 151- Warn missing docs and missing debug impls. 152- Update `crossbeam-utils` to `0.4`. 153 154# Version 0.4.1 155 156- Add `Debug` impls for `Collector`, `Handle`, and `Guard`. 157- Add `load_consume` to `Atomic`. 158- Rename `Collector::handle` to `Collector::register`. 159- Remove the `Send` implementation for `Handle` (this was a bug). Only 160 `Collector`s can be shared among multiple threads, while `Handle`s and 161 `Guard`s must stay within the thread in which they were created. 162 163# Version 0.4.0 164 165- Update dependencies. 166- Remove support for Rust 1.13. 167 168# Version 0.3.0 169 170- Add support for Rust 1.13. 171- Improve documentation for CAS. 172 173# Version 0.2.0 174 175- Add method `Owned::into_box`. 176- Fix a use-after-free bug in `Local::finalize`. 177- Fix an ordering bug in `Global::push_bag`. 178- Fix a bug in calculating distance between epochs. 179- Remove `impl<T> Into<Box<T>> for Owned<T>`. 180 181# Version 0.1.0 182 183- First version of the new epoch-based GC. 184