This PR contains the following updates:
Package
Type
Update
Change
tokio (source )
dev-dependencies
minor
1.39.3 -> 1.43.1
tokio (source )
dependencies
minor
1.39.3 -> 1.43.1
Warning
Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
GitHub Vulnerability Alerts
The broadcast channel internally calls clone on the stored value when receiving it, and only requires T:Send. This means that using the broadcast channel with values that are Send but not Sync can trigger unsoundness if the clone implementation makes use of the value being !Sync.
Thank you to Austin Bonander for finding and reporting this issue.
Release Notes
tokio-rs/tokio (tokio)
Compare Source
v1.43.0 : Tokio v1.43.0
Compare Source
1.43.0 (Jan 8th, 2025)
Added
net: add UdpSocket::peek methods (#7068 )
net: add support for Haiku OS (#7042 )
process: add Command::into_std() (#7014 )
signal: add SignalKind::info on illumos (#6995 )
signal: add support for realtime signals on illumos (#7029 )
Fixed
io: don't call set_len before initializing vector in Blocking (#7054 )
macros: suppress clippy::needless_return in #[tokio::main] (#6874 )
runtime: fix thread parking on WebAssembly (#7041 )
Changes
chore: use unsync loads for unsync_load (#7073 )
io: use Buf::put_bytes in Repeat read impl (#7055 )
task: drop the join waker of a task eagerly (#6986 )
Changes to unstable APIs
metrics: improve flexibility of H2Histogram Configuration (#6963 )
taskdump: add accessor methods for backtrace (#6975 )
Documented
io: clarify ReadBuf::uninit allows initialized buffers as well (#7053 )
net: fix ambiguity in TcpStream::try_write_vectored docs (#7067 )
runtime: fix LocalRuntime doc links (#7074 )
sync: extend documentation for watch::Receiver::wait_for (#7038 )
sync: fix typos in OnceCell docs (#7047 )
v1.42.1 : Tokio v1.42.1
Compare Source
This release fixes a soundness issue in the broadcast channel. The channel accepts values that are Send but !Sync. Previously, the channel called clone() on these values without synchronizing. This release fixes the channel by synchronizing calls to .clone() (Thanks Austin Bonander for finding and reporting the issue).
Fixed
sync: synchronize clone() call in broadcast channel (#7232 )
v1.42.0 : Tokio v1.42.0
Compare Source
1.42.0 (Dec 3rd, 2024)
Added
io: add AsyncFd::{try_io, try_io_mut} (#6967 )
Fixed
io: avoid ptr->ref->ptr roundtrip in RegistrationSet (#6929 )
runtime: do not defer yield_now inside block_in_place (#6999 )
Changes
io: simplify io readiness logic (#6966 )
Documented
net: fix docs for tokio::net::unix::{pid_t, gid_t, uid_t} (#6791 )
time: fix a typo in Instant docs (#6982 )
v1.41.1 : Tokio v1.41.1
Compare Source
1.41.1 (Nov 7th, 2024)
Fixed
metrics: fix bug with wrong number of buckets for the histogram (#6957 )
net: display net requirement for net::UdpSocket in docs (#6938 )
net: fix typo in TcpStream internal comment (#6944 )
v1.41.0 : Tokio v1.41.0
Compare Source
1.41.0 (Oct 22th, 2024)
Added
metrics: stabilize global_queue_depth (#6854 , #6918 )
net: add conversions for unix SocketAddr (#6868 )
sync: add watch::Sender::sender_count (#6836 )
sync: add mpsc::Receiver::blocking_recv_many (#6867 )
task: stabilize Id apis (#6793 , #6891 )
Added (unstable)
metrics: add H2 Histogram option to improve histogram granularity (#6897 )
metrics: rename some histogram apis (#6924 )
runtime: add LocalRuntime (#6808 )
Changed
runtime: box futures larger than 16k on release mode (#6826 )
sync: add #[must_use] to Notified (#6828 )
sync: make watch cooperative (#6846 )
sync: make broadcast::Receiver cooperative (#6870 )
task: add task size to tracing instrumentation (#6881 )
wasm: enable cfg_fs for wasi target (#6822 )
Fixed
net: fix regression of abstract socket path in unix socket (#6838 )
Documented
io: recommend OwnedFd with AsyncFd (#6821 )
io: document cancel safety of AsyncFd methods (#6890 )
macros: render more comprehensible documentation for join and try_join (#6814 , #6841 )
net: fix swapped examples for TcpSocket::set_nodelay and TcpSocket::nodelay (#6840 )
sync: document runtime compatibility (#6833 )
v1.40.0 : Tokio v1.40.0
Compare Source
1.40.0 (August 30th, 2024)
Added
io: add util::SimplexStream (#6589 )
process: stabilize Command::process_group (#6731 )
sync: add {TrySendError,SendTimeoutError}::into_inner (#6755 )
task: add JoinSet::join_all (#6784 )
Added (unstable)
runtime: add Builder::{on_task_spawn, on_task_terminate} (#6742 )
Changed
io: use vectored io for write_all_buf when possible (#6724 )
runtime: prevent niche-optimization to avoid triggering miri (#6744 )
sync: mark mpsc types as UnwindSafe (#6783 )
sync,time: make Sleep and BatchSemaphore instrumentation explicit roots (#6727 )
task: use NonZeroU64 for task::Id (#6733 )
task: include panic message when printing JoinError (#6753 )
task: add #[must_use] to JoinHandle::abort_handle (#6762 )
time: eliminate timer wheel allocations (#6779 )
Documented
docs: clarify that [build] section doesn't go in Cargo.toml (#6728 )
io: clarify zero remaining capacity case (#6790 )
macros: improve documentation for select! (#6774 )
sync: document mpsc channel allocation behavior (#6773 )
Configuration
📅 Schedule : Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 Automerge : Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing : Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore : Close this PR and you won't be reminded about these updates again.
This PR was generated by Mend Renovate . View the repository job log .
This PR contains the following updates:
| Package | Type | Update | Change |
|---|---|---|---|
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | dev-dependencies | minor | `1.39.3` -> `1.43.1` |
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | dependencies | minor | `1.39.3` -> `1.43.1` |
---
> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.
### GitHub Vulnerability Alerts
#### [GHSA-rr8g-9fpq-6wmg](https://redirect.github.com/tokio-rs/tokio/pull/7232)
The broadcast channel internally calls `clone` on the stored value when receiving it, and only requires `T:Send`. This means that using the broadcast channel with values that are `Send` but not `Sync` can trigger unsoundness if the `clone` implementation makes use of the value being `!Sync`.
Thank you to Austin Bonander for finding and reporting this issue.
---
### Release Notes
<details>
<summary>tokio-rs/tokio (tokio)</summary>
### [`v1.43.1`](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.43.0...tokio-1.43.1)
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.43.0...tokio-1.43.1)
### [`v1.43.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.43.0): Tokio v1.43.0
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.42.1...tokio-1.43.0)
### 1.43.0 (Jan 8th, 2025)
##### Added
- net: add `UdpSocket::peek` methods ([#​7068])
- net: add support for Haiku OS ([#​7042])
- process: add `Command::into_std()` ([#​7014])
- signal: add `SignalKind::info` on illumos ([#​6995])
- signal: add support for realtime signals on illumos ([#​7029])
##### Fixed
- io: don't call `set_len` before initializing vector in `Blocking` ([#​7054])
- macros: suppress `clippy::needless_return` in `#[tokio::main]` ([#​6874])
- runtime: fix thread parking on WebAssembly ([#​7041])
##### Changes
- chore: use unsync loads for `unsync_load` ([#​7073])
- io: use `Buf::put_bytes` in `Repeat` read impl ([#​7055])
- task: drop the join waker of a task eagerly ([#​6986])
##### Changes to unstable APIs
- metrics: improve flexibility of H2Histogram Configuration ([#​6963])
- taskdump: add accessor methods for backtrace ([#​6975])
##### Documented
- io: clarify `ReadBuf::uninit` allows initialized buffers as well ([#​7053])
- net: fix ambiguity in `TcpStream::try_write_vectored` docs ([#​7067])
- runtime: fix `LocalRuntime` doc links ([#​7074])
- sync: extend documentation for `watch::Receiver::wait_for` ([#​7038])
- sync: fix typos in `OnceCell` docs ([#​7047])
[#​6874]: https://redirect.github.com/tokio-rs/tokio/pull/6874
[#​6963]: https://redirect.github.com/tokio-rs/tokio/pull/6963
[#​6975]: https://redirect.github.com/tokio-rs/tokio/pull/6975
[#​6986]: https://redirect.github.com/tokio-rs/tokio/pull/6986
[#​6995]: https://redirect.github.com/tokio-rs/tokio/pull/6995
[#​7014]: https://redirect.github.com/tokio-rs/tokio/pull/7014
[#​7029]: https://redirect.github.com/tokio-rs/tokio/pull/7029
[#​7038]: https://redirect.github.com/tokio-rs/tokio/pull/7038
[#​7041]: https://redirect.github.com/tokio-rs/tokio/pull/7041
[#​7042]: https://redirect.github.com/tokio-rs/tokio/pull/7042
[#​7047]: https://redirect.github.com/tokio-rs/tokio/pull/7047
[#​7053]: https://redirect.github.com/tokio-rs/tokio/pull/7053
[#​7054]: https://redirect.github.com/tokio-rs/tokio/pull/7054
[#​7055]: https://redirect.github.com/tokio-rs/tokio/pull/7055
[#​7067]: https://redirect.github.com/tokio-rs/tokio/pull/7067
[#​7068]: https://redirect.github.com/tokio-rs/tokio/pull/7068
[#​7073]: https://redirect.github.com/tokio-rs/tokio/pull/7073
[#​7074]: https://redirect.github.com/tokio-rs/tokio/pull/7074
### [`v1.42.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.42.1): Tokio v1.42.1
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.42.0...tokio-1.42.1)
This release fixes a soundness issue in the broadcast channel. The channel accepts values that are `Send` but `!Sync`. Previously, the channel called `clone()` on these values without synchronizing. This release fixes the channel by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and reporting the issue).
##### Fixed
- sync: synchronize `clone()` call in broadcast channel ([#​7232])
[#​7232]: https://redirect.github.com/tokio-rs/tokio/pull/7232
### [`v1.42.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.42.0): Tokio v1.42.0
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.41.1...tokio-1.42.0)
### 1.42.0 (Dec 3rd, 2024)
##### Added
- io: add `AsyncFd::{try_io, try_io_mut}` ([#​6967])
##### Fixed
- io: avoid `ptr->ref->ptr` roundtrip in RegistrationSet ([#​6929])
- runtime: do not defer `yield_now` inside `block_in_place` ([#​6999])
##### Changes
- io: simplify io readiness logic ([#​6966])
##### Documented
- net: fix docs for `tokio::net::unix::{pid_t, gid_t, uid_t}` ([#​6791])
- time: fix a typo in `Instant` docs ([#​6982])
[#​6791]: https://redirect.github.com/tokio-rs/tokio/pull/6791
[#​6929]: https://redirect.github.com/tokio-rs/tokio/pull/6929
[#​6966]: https://redirect.github.com/tokio-rs/tokio/pull/6966
[#​6967]: https://redirect.github.com/tokio-rs/tokio/pull/6967
[#​6982]: https://redirect.github.com/tokio-rs/tokio/pull/6982
[#​6999]: https://redirect.github.com/tokio-rs/tokio/pull/6999
### [`v1.41.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.41.1): Tokio v1.41.1
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.41.0...tokio-1.41.1)
### 1.41.1 (Nov 7th, 2024)
##### Fixed
- metrics: fix bug with wrong number of buckets for the histogram ([#​6957])
- net: display `net` requirement for `net::UdpSocket` in docs ([#​6938])
- net: fix typo in `TcpStream` internal comment ([#​6944])
[#​6957]: https://redirect.github.com/tokio-rs/tokio/pull/6957
[#​6938]: https://redirect.github.com/tokio-rs/tokio/pull/6938
[#​6944]: https://redirect.github.com/tokio-rs/tokio/pull/6944
### [`v1.41.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.41.0): Tokio v1.41.0
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.40.0...tokio-1.41.0)
### 1.41.0 (Oct 22th, 2024)
##### Added
- metrics: stabilize `global_queue_depth` ([#​6854], [#​6918])
- net: add conversions for unix `SocketAddr` ([#​6868])
- sync: add `watch::Sender::sender_count` ([#​6836])
- sync: add `mpsc::Receiver::blocking_recv_many` ([#​6867])
- task: stabilize `Id` apis ([#​6793], [#​6891])
##### Added (unstable)
- metrics: add H2 Histogram option to improve histogram granularity ([#​6897])
- metrics: rename some histogram apis ([#​6924])
- runtime: add `LocalRuntime` ([#​6808])
##### Changed
- runtime: box futures larger than 16k on release mode ([#​6826])
- sync: add `#[must_use]` to `Notified` ([#​6828])
- sync: make `watch` cooperative ([#​6846])
- sync: make `broadcast::Receiver` cooperative ([#​6870])
- task: add task size to tracing instrumentation ([#​6881])
- wasm: enable `cfg_fs` for `wasi` target ([#​6822])
##### Fixed
- net: fix regression of abstract socket path in unix socket ([#​6838])
##### Documented
- io: recommend `OwnedFd` with `AsyncFd` ([#​6821])
- io: document cancel safety of `AsyncFd` methods ([#​6890])
- macros: render more comprehensible documentation for `join` and `try_join` ([#​6814], [#​6841])
- net: fix swapped examples for `TcpSocket::set_nodelay` and `TcpSocket::nodelay` ([#​6840])
- sync: document runtime compatibility ([#​6833])
[#​6793]: https://redirect.github.com/tokio-rs/tokio/pull/6793
[#​6808]: https://redirect.github.com/tokio-rs/tokio/pull/6808
[#​6810]: https://redirect.github.com/tokio-rs/tokio/pull/6810
[#​6814]: https://redirect.github.com/tokio-rs/tokio/pull/6814
[#​6821]: https://redirect.github.com/tokio-rs/tokio/pull/6821
[#​6822]: https://redirect.github.com/tokio-rs/tokio/pull/6822
[#​6826]: https://redirect.github.com/tokio-rs/tokio/pull/6826
[#​6828]: https://redirect.github.com/tokio-rs/tokio/pull/6828
[#​6833]: https://redirect.github.com/tokio-rs/tokio/pull/6833
[#​6836]: https://redirect.github.com/tokio-rs/tokio/pull/6836
[#​6838]: https://redirect.github.com/tokio-rs/tokio/pull/6838
[#​6840]: https://redirect.github.com/tokio-rs/tokio/pull/6840
[#​6841]: https://redirect.github.com/tokio-rs/tokio/pull/6841
[#​6846]: https://redirect.github.com/tokio-rs/tokio/pull/6846
[#​6854]: https://redirect.github.com/tokio-rs/tokio/pull/6854
[#​6867]: https://redirect.github.com/tokio-rs/tokio/pull/6867
[#​6868]: https://redirect.github.com/tokio-rs/tokio/pull/6868
[#​6870]: https://redirect.github.com/tokio-rs/tokio/pull/6870
[#​6881]: https://redirect.github.com/tokio-rs/tokio/pull/6881
[#​6890]: https://redirect.github.com/tokio-rs/tokio/pull/6890
[#​6891]: https://redirect.github.com/tokio-rs/tokio/pull/6891
[#​6897]: https://redirect.github.com/tokio-rs/tokio/pull/6897
[#​6918]: https://redirect.github.com/tokio-rs/tokio/pull/6918
[#​6924]: https://redirect.github.com/tokio-rs/tokio/pull/6924
### [`v1.40.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.40.0): Tokio v1.40.0
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.39.3...tokio-1.40.0)
### 1.40.0 (August 30th, 2024)
##### Added
- io: add `util::SimplexStream` ([#​6589])
- process: stabilize `Command::process_group` ([#​6731])
- sync: add `{TrySendError,SendTimeoutError}::into_inner` ([#​6755])
- task: add `JoinSet::join_all` ([#​6784])
##### Added (unstable)
- runtime: add `Builder::{on_task_spawn, on_task_terminate}` ([#​6742])
##### Changed
- io: use vectored io for `write_all_buf` when possible ([#​6724])
- runtime: prevent niche-optimization to avoid triggering miri ([#​6744])
- sync: mark mpsc types as `UnwindSafe` ([#​6783])
- sync,time: make `Sleep` and `BatchSemaphore` instrumentation explicit roots ([#​6727])
- task: use `NonZeroU64` for `task::Id` ([#​6733])
- task: include panic message when printing `JoinError` ([#​6753])
- task: add `#[must_use]` to `JoinHandle::abort_handle` ([#​6762])
- time: eliminate timer wheel allocations ([#​6779])
##### Documented
- docs: clarify that `[build]` section doesn't go in Cargo.toml ([#​6728])
- io: clarify zero remaining capacity case ([#​6790])
- macros: improve documentation for `select!` ([#​6774])
- sync: document mpsc channel allocation behavior ([#​6773])
[#​6589]: https://redirect.github.com/tokio-rs/tokio/pull/6589
[#​6724]: https://redirect.github.com/tokio-rs/tokio/pull/6724
[#​6727]: https://redirect.github.com/tokio-rs/tokio/pull/6727
[#​6728]: https://redirect.github.com/tokio-rs/tokio/pull/6728
[#​6731]: https://redirect.github.com/tokio-rs/tokio/pull/6731
[#​6733]: https://redirect.github.com/tokio-rs/tokio/pull/6733
[#​6742]: https://redirect.github.com/tokio-rs/tokio/pull/6742
[#​6744]: https://redirect.github.com/tokio-rs/tokio/pull/6744
[#​6753]: https://redirect.github.com/tokio-rs/tokio/pull/6753
[#​6755]: https://redirect.github.com/tokio-rs/tokio/pull/6755
[#​6762]: https://redirect.github.com/tokio-rs/tokio/pull/6762
[#​6773]: https://redirect.github.com/tokio-rs/tokio/pull/6773
[#​6774]: https://redirect.github.com/tokio-rs/tokio/pull/6774
[#​6779]: https://redirect.github.com/tokio-rs/tokio/pull/6779
[#​6783]: https://redirect.github.com/tokio-rs/tokio/pull/6783
[#​6784]: https://redirect.github.com/tokio-rs/tokio/pull/6784
[#​6790]: https://redirect.github.com/tokio-rs/tokio/pull/6790
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "" (UTC), Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied.
♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/Shadow53/hoard).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMjcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjIzNS4yIiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6W119-->