135 lines
2.5 KiB
Markdown
135 lines
2.5 KiB
Markdown
|
# Changelog
|
||
|
|
||
|
All notable changes to this project will be documented in this file.
|
||
|
|
||
|
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
||
|
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
||
|
|
||
|
# Unreleased
|
||
|
|
||
|
### Added
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
# [0.11.0] - 2023-08-16
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- `WeakSender`, a sender that doesn't keep the channel open
|
||
|
- `Sender/Receiver::sender_count/receiver_count`, a way to query the number of senders and receivers attached to a channel
|
||
|
- `Sender/Receiver::same_channel`, a way to determine whether senders and receivers are attached to the same channel
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Relaxed some API features
|
||
|
- Make all remaining spinlocks opt-in
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Fixed a rare race condition in the async implementation
|
||
|
|
||
|
# [0.10.14] - 2022-07-21
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Fixed unbounded memory usage in `RecvFut::poll_inner`
|
||
|
|
||
|
# [0.10.13] - 2022-06-10
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- `SendSink::sender`, to get the sender of a `SendSink`
|
||
|
|
||
|
# [0.10.12] - 2022-03-10
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Updated `nanorand` to 0.7
|
||
|
|
||
|
# [0.10.11] - 2022-02-14
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Out-of-order bug when using channels asynchronously
|
||
|
|
||
|
# [0.10.10] - 2022-01-11
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- `From<SendError>` and `From<RecvError>` impls for other error types
|
||
|
- Marked futures as `#[must_use]`
|
||
|
|
||
|
### Changes
|
||
|
|
||
|
- Switched to scheduler-driven locking by default, with a `spin` feature to reenable the old behaviour
|
||
|
- Minor doc improvements
|
||
|
|
||
|
# [0.10.9] - 2021-08-25
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Switched from `spinning_top` to `spin`
|
||
|
|
||
|
# [0.10.8] - 2021-08-06
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Updated `nanorand` to `0.6`
|
||
|
|
||
|
# [0.10.7] - 2021-06-10
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Removed accidental nightly-only syntax
|
||
|
|
||
|
# [0.10.6] - 2021-06-10
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- `fn into_inner(self) -> T` for send errors, allowing for easy access to the unsent message
|
||
|
|
||
|
# [0.10.5] - 2021-04-26
|
||
|
|
||
|
### Added
|
||
|
|
||
|
- `is_disconnected`, `is_empty`, `is_full`, `len`, and `capacity` on future types
|
||
|
|
||
|
# [0.10.4] - 2021-04-12
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Shutdown-related race condition with async recv that caused spurious errors
|
||
|
|
||
|
# [0.10.3] - 2021-04-09
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Compilation error when enabling `select` without `eventual_fairness`
|
||
|
|
||
|
# [0.10.2] - 2021-02-07
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Incorrect pointer comparison in `Selector` causing missing receives
|
||
|
|
||
|
# [0.10.1] - 2020-12-30
|
||
|
|
||
|
### Removed
|
||
|
|
||
|
- Removed `T: Unpin` requirement from async traits using `pin_project`
|
||
|
|
||
|
# [0.10.0] - 2020-12-09
|
||
|
|
||
|
### Changed
|
||
|
|
||
|
- Renamed `SendFuture` to `SendFut` to be consistent with `RecvFut`
|
||
|
- Improved async-related documentation
|
||
|
|
||
|
### Fixed
|
||
|
|
||
|
- Updated `nanorand` to address security advisory
|