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