Releases: smol-rs/async-lock
Releases · smol-rs/async-lock
v3.3.0
- Add a
forget()
method for semaphore guards. (#73)
- Increase MSRV to v1.60. (#75)
v3.2.0
- Add missing methods for blocking on locking with types wrapped in
Arc
(#71).
v3.1.2
- Bump
event-listener
to version v4.0.0. (#69)
v3.1.1
- Add a note to the documentation comparing this crate against
libstd
's locks. (#58)
v3.1.0
- Add a
Default
implementation for OnceCell
(#63).
v3.0.0
- Breaking: Add an enabled-by-default
std
feature that allows using this crate without the standard library. (#43)
- Support blocking and non-blocking operations on the same locks. (#56)
- Switch to a more efficient event notification mechanism. (#43)
v2.8.0
- Fix a bug where the
SemaphoreGuard::acquire_arc
future would busy wait under certain conditions (#42).
- Add a
Semaphore::add_permits()
function to increase the number of available permits on the semaphore (#44).
- Make
RwLockReadGuard
covariant over its lifetime (#45)
- Add
RwLockReadGuardArc
, RwLockWriteGuardArc
, and other reference counted guards for the RwLock
type (#47).
- Loosen the
Send
/Sync
bounds on certain future types (#48).
- Fix UB caused by the
MutexGuardArc::source
function allowing the user to drop an object in a different thread than the one it was acquired in (#50). This is a breaking change, but in the name of soundness. Therefore it doesn't break any valid behavior.
- Fix a bug where this crate would not compile properly on
wasm64
(#51).
v2.7.0
- Replace some
async
blocks with manual futures (#34)
- Remove our dependency on
futures-lite
(#36)
- Mark guard types with
#[clippy::has_significant_drop]
(#37)
v2.6.0
- Add
OnceCell
. (#27)
- Support wasm64.
v2.5.0
- Fix an issue where the future returned by
Mutex::lock_arc
/Semaphore::acquire_arc
holds a reference to self
. (#20, #21)