Bug 1888590 - Mark some subtests on trusted-types-event-handlers.html as failing...
[gecko.git] / third_party / rust / parking_lot / CHANGELOG.md
blob8421b843f4dc7b4ef8db5d49e4b643c8081b2520
1 ## parking_lot 0.12.1 (2022-05-31)
3 - Fixed incorrect memory ordering in `RwLock`. (#344)
4 - Added `Condvar::wait_while` convenience methods (#343)
6 ## parking_lot_core 0.9.3 (2022-04-30)
8 - Bump windows-sys dependency to 0.36. (#339)
10 ## parking_lot_core 0.9.2, lock_api 0.4.7 (2022-03-25)
12 - Enable const new() on lock types on stable. (#325)
13 - Added `MutexGuard::leak` function. (#333)
14 - Bump windows-sys dependency to 0.34. (#331)
15 - Bump petgraph dependency to 0.6. (#326)
16 - Don't use pthread attributes on the espidf platform. (#319)
18 ## parking_lot_core 0.9.1 (2022-02-06)
20 - Bump windows-sys dependency to 0.32. (#316)
22 ## parking_lot 0.12.0, parking_lot_core 0.9.0, lock_api 0.4.6 (2022-01-28)
24 - The MSRV is bumped to 1.49.0.
25 - Disabled eventual fairness on wasm32-unknown-unknown. (#302)
26 - Added a rwlock method to report if lock is held exclusively. (#303)
27 - Use new `asm!` macro. (#304)
28 - Use windows-rs instead of winapi for faster builds. (#311)
29 - Moved hardware lock elision support to a separate Cargo feature. (#313)
30 - Removed used of deprecated `spin_loop_hint`. (#314)
32 ## parking_lot 0.11.2, parking_lot_core 0.8.4, lock_api 0.4.5 (2021-08-28)
34 - Fixed incorrect memory orderings on `RwLock` and `WordLock`. (#294, #292)
35 - Added `Arc`-based lock guards. (#291)
36 - Added workaround for TSan's lack of support for `fence`. (#292)
38 ## lock_api 0.4.4 (2021-05-01)
40 - Update for latest nightly. (#281)
42 ## lock_api 0.4.3 (2021-04-03)
44 - Added `[Raw]ReentrantMutex::is_owned`. (#280)
46 ## parking_lot_core 0.8.3 (2021-02-12)
48 - Updated smallvec to 1.6. (#276)
50 ## parking_lot_core 0.8.2 (2020-12-21)
52 - Fixed assertion failure on OpenBSD. (#270)
54 ## parking_lot_core 0.8.1 (2020-12-04)
56 - Removed deprecated CloudABI support. (#263)
57 - Fixed build on wasm32-unknown-unknown. (#265)
58 - Relaxed dependency on `smallvec`. (#266)
60 ## parking_lot 0.11.1, lock_api 0.4.2 (2020-11-18)
62 - Fix bounds on Send and Sync impls for lock guards. (#262)
63 - Fix incorrect memory ordering in `RwLock`. (#260)
65 ## lock_api 0.4.1 (2020-07-06)
67 - Add `data_ptr` method to lock types to allow unsafely accessing the inner data
68   without a guard. (#247)
70 ## parking_lot 0.11.0, parking_lot_core 0.8.0, lock_api 0.4.0 (2020-06-23)
72 - Add `is_locked` method to mutex types. (#235)
73 - Make `RawReentrantMutex` public. (#233)
74 - Allow lock guard to be sent to another thread with the `send_guard` feature. (#240)
75 - Use `Instant` type from the `instant` crate on wasm32-unknown-unknown. (#231)
76 - Remove deprecated and unsound `MappedRwLockWriteGuard::downgrade`. (#244)
77 - Most methods on the `Raw*` traits have been made unsafe since they assume
78   the current thread holds the lock. (#243)
80 ## parking_lot_core 0.7.2 (2020-04-21)
82 - Add support for `wasm32-unknown-unknown` under the "nightly" feature. (#226)
84 ## parking_lot 0.10.2 (2020-04-10)
86 - Update minimum version of `lock_api`.
88 ## parking_lot 0.10.1, parking_lot_core 0.7.1, lock_api 0.3.4 (2020-04-10)
90 - Add methods to construct `Mutex`, `RwLock`, etc in a `const` context. (#217)
91 - Add `FairMutex` which always uses fair unlocking. (#204)
92 - Fixed panic with deadlock detection on macOS. (#203)
93 - Fixed incorrect synchronization in `create_hashtable`. (#210)
94 - Use `llvm_asm!` instead of the deprecated `asm!`. (#223)
96 ## lock_api 0.3.3 (2020-01-04)
98 - Deprecate unsound `MappedRwLockWriteGuard::downgrade` (#198)
100 ## parking_lot 0.10.0, parking_lot_core 0.7.0, lock_api 0.3.2 (2019-11-25)
102 - Upgrade smallvec dependency to 1.0 in parking_lot_core.
103 - Replace all usage of `mem::uninitialized` with `mem::MaybeUninit`.
104 - The minimum required Rust version is bumped to 1.36. Because of the above two changes.
105 - Make methods on `WaitTimeoutResult` and `OnceState` take `self` by value instead of reference.
107 ## parking_lot_core 0.6.2 (2019-07-22)
109 - Fixed compile error on Windows with old cfg_if version. (#164)
111 ## parking_lot_core 0.6.1 (2019-07-17)
113 - Fixed Android build. (#163)
115 ## parking_lot 0.9.0, parking_lot_core 0.6.0, lock_api 0.3.1 (2019-07-14)
117 - Re-export lock_api (0.3.1) from parking_lot (#150)
118 - Removed (non-dev) dependency on rand crate for fairness mechanism, by
119   including a simple xorshift PRNG in core (#144)
120 - Android now uses the futex-based ThreadParker. (#140)
121 - Fixed CloudABI ThreadParker. (#140)
122 - Fix race condition in lock_api::ReentrantMutex (da16c2c7)
124 ## lock_api 0.3.0 (2019-07-03, _yanked_)
126 - Use NonZeroUsize in GetThreadId::nonzero_thread_id (#148)
127 - Debug assert lock_count in ReentrantMutex (#148)
128 - Tag as `unsafe` and document some internal methods (#148)
129 - This release was _yanked_ due to a regression in ReentrantMutex (da16c2c7)
131 ## parking_lot 0.8.1 (2019-07-03, _yanked_)
133 - Re-export lock_api (0.3.0) from parking_lot (#150)
134 - This release was _yanked_ from crates.io due to unexpected breakage (#156)
136 ## parking_lot 0.8.0, parking_lot_core 0.5.0, lock_api 0.2.0 (2019-05-04)
138 - Fix race conditions in deadlock detection.
139 - Support for more platforms by adding ThreadParker implementations for
140   Wasm, Redox, SGX and CloudABI.
141 - Drop support for older Rust. parking_lot now requires 1.31 and is a
142   Rust 2018 edition crate (#122).
143 - Disable the owning_ref feature by default.
144 - Fix was_last_thread value in the timeout callback of park() (#129).
145 - Support single byte Mutex/Once on stable Rust when compiler is at least
146   version 1.34.
147 - Make Condvar::new and Once::new const fns on stable Rust and remove
148   ONCE_INIT (#134).
149 - Add optional Serde support (#135).
151 ## parking_lot 0.7.1 (2019-01-01)
153 - Fixed potential deadlock when upgrading a RwLock.
154 - Fixed overflow panic on very long timeouts (#111).
156 ## parking_lot 0.7.0, parking_lot_core 0.4.0 (2018-11-26)
158 - Return if or how many threads were notified from `Condvar::notify_*`
160 ## parking_lot 0.6.3 (2018-07-18)
162 - Export `RawMutex`, `RawRwLock` and `RawThreadId`.
164 ## parking_lot 0.6.2 (2018-06-18)
166 - Enable `lock_api/nightly` feature from `parking_lot/nightly` (#79)
168 ## parking_lot 0.6.1 (2018-06-08)
170 Added missing typedefs for mapped lock guards:
172 - `MappedMutexGuard`
173 - `MappedReentrantMutexGuard`
174 - `MappedRwLockReadGuard`
175 - `MappedRwLockWriteGuard`
177 ## parking_lot 0.6.0 (2018-06-08)
179 This release moves most of the code for type-safe `Mutex` and `RwLock` types
180 into a separate crate called `lock_api`. This new crate is compatible with
181 `no_std` and provides `Mutex` and `RwLock` type-safe wrapper types from a raw
182 mutex type which implements the `RawMutex` or `RawRwLock` trait. The API
183 provided by the wrapper types can be extended by implementing more traits on
184 the raw mutex type which provide more functionality (e.g. `RawMutexTimed`). See
185 the crate documentation for more details.
187 There are also several major changes:
189 - The minimum required Rust version is bumped to 1.26.
190 - All methods on `MutexGuard` (and other guard types) are no longer inherent
191   methods and must be called as `MutexGuard::method(self)`. This avoids
192   conflicts with methods from the inner type.
193 - `MutexGuard` (and other guard types) add the `unlocked` method which
194   temporarily unlocks a mutex, runs the given closure, and then re-locks the
195    mutex.
196 - `MutexGuard` (and other guard types) add the `bump` method which gives a
197   chance for other threads to acquire the mutex by temporarily unlocking it and
198   re-locking it. However this is optimized for the common case where there are
199   no threads waiting on the lock, in which case no unlocking is performed.
200 - `MutexGuard` (and other guard types) add the `map` method which returns a
201   `MappedMutexGuard` which holds only a subset of the original locked type. The
202   `MappedMutexGuard` type is identical to `MutexGuard` except that it does not
203   support the `unlocked` and `bump` methods, and can't be used with `CondVar`.