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.
Once
performance by reducing the memory footprint of internal state to one byteOnce
by relaxing ordering guarantees and removing redundant checksOnce
for better ergonomicslock_api
featureOnce::get_unchecked
RelaxStrategy
trait with type parameter on all locks to support switching between relax strategieslock_api1
feature is now named lock_api
Once
leaking the inner value upon dropOnce::initialized
Once::get_mut
Once::try_into_inner
Once::poll
RwLock
, Mutex
and Once
now implement From<T>
Lazy
type for lazy initializationTicketMutex
, an alternative mutex implementationstd
feature flag to enable thread yielding instead of spinningMutex::is_locked
/SpinMutex::is_locked
/TicketMutex::is_locked
Barrier
Once::wait
now spins even if initialization has not yet startedGuard::leak
is now an associated function instead of a methodSpinMutex
by relaxing unnecessarily conservative ordering requirementsSend
/Sync
bounds for lock guardslock_api
compatibilityGuard::leak
methodsRwLock::reader_count
and RwLock::writer_count
Display
implementation for guard typesDebug
impls of lock guards just show the inner type like std