mirror of https://github.com/smol-rs/async-lock
2.8 KiB
2.8 KiB
Version 3.3.0
- Add a
forget()
method for semaphore guards. (#73) - Increase MSRV to v1.60. (#75)
Version 3.2.0
- Add missing methods for blocking on locking with types wrapped in
Arc
(#71).
Version 3.1.2
- Bump
event-listener
to version v4.0.0. (#69)
Version 3.1.1
- Add a note to the documentation comparing this crate against
libstd
's locks. (#58)
Version 3.1.0
- Add a
Default
implementation forOnceCell
(#63).
Version 3.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)
Version 2.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 theRwLock
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).
Version 2.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)
Version 2.6.0
- Add
OnceCell
. (#27) - Support wasm64.
Version 2.5.0
- Fix an issue where the future returned by
Mutex::lock_arc
/Semaphore::acquire_arc
holds a reference toself
. (#20, #21)
Version 2.4.0
- Add WASM support. (#14)
Version 2.3.0
- Merge all subcrates.
Version 2.2.0
- Add functions to upgrade and downgrade
RwLock
guards. - Make all constructors
const fn
.
Version 2.1.3
- Add
#![forbid(unsafe_code)]
.
Version 2.1.2
- Update dependencies.
Version 2.1.1
- Update crate description.
Version 2.1.0
- Add
Barrier
andSemaphore
.
Version 2.0.1
- Update crate description.
Version 2.0.0
- Only re-export
async-mutex
andasync-rwlock
.
Version 1.1.5
- Replace the implementation with
async-mutex
.
Version 1.1.4
- Replace
usize::MAX
withstd::usize::MAX
.
Version 1.1.3
- Update dependencies.
Version 1.1.2
- Fix a deadlock issue.
Version 1.1.1
- Fix some typos.
Version 1.1.0
- Make locking fair.
- Add
LockGuard::source()
.
Version 1.0.2
- Bump the
event-listener
version. - Add tests.
Version 1.0.1
- Update Cargo categories.
Version 1.0.0
- Initial version