2.4 KiB
2.4 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Added
Changed
Fixed
[0.9.4] - 2022-07-14
Fixed
- Fixed unsoundness in
RwLockon reader overflow - Relaxed
Send/Syncbounds forSpinMutexandTicketMutex(doesn't affectMutexitself)
[0.9.3] - 2022-04-17
Added
- Implemented
DefaultforOnce Once::try_call_once
Fixed
- Fixed bug that caused
Once::call_onceto incorrectly fail
[0.9.2] - 2021-07-09
Changed
- Improved
Onceperformance by reducing the memory footprint of internal state to one byte
Fixed
- Improved performance of
Onceby relaxing ordering guarantees and removing redundant checks
[0.9.1] - 2021-06-21
Added
- Default type parameter on
Oncefor better ergonomics
[0.9.0] - 2021-03-18
Changed
- Placed all major API features behind feature flags
Fixed
- A compilation bug with the
lock_apifeature
[0.8.0] - 2021-03-15
Added
Once::get_uncheckedRelaxStrategytrait with type parameter on all locks to support switching between relax strategies
Changed
lock_api1feature is now namedlock_api
[0.7.1] - 2021-01-12
Fixed
- Prevented
Onceleaking the inner value upon drop
[0.7.0] - 2020-10-18
Added
Once::initializedOnce::get_mutOnce::try_into_innerOnce::pollRwLock,MutexandOncenow implementFrom<T>Lazytype for lazy initializationTicketMutex, an alternative mutex implementationstdfeature flag to enable thread yielding instead of spinningMutex::is_locked/SpinMutex::is_locked/TicketMutex::is_lockedBarrier
Changed
Once::waitnow spins even if initialization has not yet startedGuard::leakis now an associated function instead of a method- Improved the performance of
SpinMutexby relaxing unnecessarily conservative ordering requirements
[0.6.0] - 2020-10-08
Added
- More dynamic
Send/Syncbounds for lock guards lock_apicompatibilityGuard::leakmethodsRwLock::reader_countandRwLock::writer_countDisplayimplementation for guard types
Changed
- Made
Debugimpls of lock guards just show the inner type likestd