cerbos / cerbos-sdk-rust

Cerbos Rust SDK
https://cerbos.dev
Apache License 2.0
8 stars 3 forks source link

chore(deps): update all non-major dependencies #14

Closed renovate[bot] closed 1 year ago

renovate[bot] commented 1 year ago

Mend Renovate

This PR contains the following updates:

Package Type Update Change
anyhow dependencies patch 1.0.56 -> 1.0.71
prost dependencies minor 0.10.0 -> 0.11.9
prost-types dependencies minor 0.10.0 -> 0.11.9
testcontainers dependencies minor 0.13.0 -> 0.14.0
tokio (source) dependencies minor 1.17.0 -> 1.29.1
tonic dependencies minor 0.7.1 -> 0.9.2
tonic-build build-dependencies minor 0.7.0 -> 0.9.2
tower dependencies patch 0.4.12 -> 0.4.13

Release Notes

dtolnay/anyhow (anyhow) ### [`v1.0.71`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.71) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.70...1.0.71) - Documentation improvements ### [`v1.0.70`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.70) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.69...1.0.70) - Update syn dependency to 2.x ### [`v1.0.69`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.69) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.68...1.0.69) - Documentation improvements ### [`v1.0.68`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.68) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.67...1.0.68) - Opt out of `-Zrustdoc-scrape-examples` on docs.rs for now ### [`v1.0.67`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.67) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.66...1.0.67) - Improve the backtrace captured when `context()` is used on an `Option` ([#​280](https://togithub.com/dtolnay/anyhow/issues/280)) ### [`v1.0.66`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.66) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.65...1.0.66) - Reduce unhelpful backtrace frames in backtraces captured during a `context` call ([#​279](https://togithub.com/dtolnay/anyhow/issues/279)) ### [`v1.0.65`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.65) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.64...1.0.65) - impl Provider for anyhow::Error ### [`v1.0.64`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.64) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.63...1.0.64) - Correctly propagate Backtrace when using `#[source] anyhow::Error` with [thiserror](https://togithub.com/dtolnay/thiserror) crate ([#​231](https://togithub.com/dtolnay/anyhow/issues/231)) ### [`v1.0.63`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.63) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.62...1.0.63) - Expose backtraces via the new "generic member access" API on the Error trait ([https://github.com/rust-lang/rust/issues/99301](https://togithub.com/rust-lang/rust/issues/99301), [https://github.com/rust-lang/rust/issues/96024](https://togithub.com/rust-lang/rust/issues/96024)) ### [`v1.0.62`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.62) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.61...1.0.62) - Fix extra rebuilding when interleaving command-line `cargo` invocations with IDE builds ([#​261](https://togithub.com/dtolnay/anyhow/issues/261)) ### [`v1.0.61`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.61) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.60...1.0.61) - Work around rust-analyzer builds poisoning all subsequent command-line cargo builds ([#​252](https://togithub.com/dtolnay/anyhow/issues/252)) ### [`v1.0.60`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.60) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.59...1.0.60) - Propagate `--target` to rustc invocation when deciding about backtrace support ([#​249](https://togithub.com/dtolnay/anyhow/issues/249), thanks [@​RalfJung](https://togithub.com/RalfJung)) ### [`v1.0.59`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.59) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.58...1.0.59) - Update crates.io metadata to include `no-std` category ### [`v1.0.58`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.58) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.57...1.0.58) - Fix some broken links in documentation ### [`v1.0.57`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.57) [Compare Source](https://togithub.com/dtolnay/anyhow/compare/1.0.56...1.0.57) - Remove a `log4rs`-specific workaround from `bail!` macro implementation
tokio-rs/prost (prost) ### [`v0.11.9`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.9) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.8...v0.11.9) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - build: Support boxing fields via `Config::boxed` ([#​802](https://togithub.com/tokio-rs/prost/pull/802)) ### [`v0.11.8`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.8) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.7...v0.11.8) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - types: Fix unintentional change in compiler module visibility [#​824](https://togithub.com/tokio-rs/prost/pull/824) `prost-types` 0.11.7 was yanked due to the above unintentional semver breakage. ### [`v0.11.7`](https://togithub.com/tokio-rs/prost/compare/v0.11.6...v0.11.7) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.6...v0.11.7) ### [`v0.11.6`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.6) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.5...v0.11.6) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - build: Add message and enum attributes ([https://github.com/tokio-rs/prost/pull/784](https://togithub.com/tokio-rs/prost/pull/784)) ### [`v0.11.5`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.5) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.3...v0.11.5) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - build: Allow file descriptor be generated without --include_source_info ([https://github.com/tokio-rs/prost/pull/786](https://togithub.com/tokio-rs/prost/pull/786)) - build: Expose from_str_name for generated enums ([https://github.com/tokio-rs/prost/pull/774](https://togithub.com/tokio-rs/prost/pull/774)) ### [`v0.11.3`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.3) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.2...v0.11.3) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - build: Use `log` to print error logs. - build: Remove accidentally included prints. - build: Improve debian error message hint. ### [`v0.11.2`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.2) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.11.0...v0.11.2) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This patch updates brings a few new features and fixes: - build: Improve `protoc` sourcing instructions in error messages. - build: Add `Clone` to `Service` types. - build: Sort modules to produce deterministic include files. - core: Tuple struct support. - build: Allow generated code derive path's to be changed. - build: Allow changing prost crate path. - build: Add code formatting support. ### [`v0.11.0`](https://togithub.com/tokio-rs/prost/releases/tag/v0.11.0) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.10.4...v0.11.0) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. Relase 0.11 brings a few breaking changes and changes to how prost sources protoc. - `prost-build` now requires `protoc` to be available in the path or set via the `PROTOC` env var. - `prost-types` now contains new `Timestamp`/`Duration` `FromStr` implementations. - MSRV bump to `1.56` and all crates have been moved to edition 2021 Notible changes that are not breaking: - `prost-build` now has a `cleanup-markdown` feature for cleaining up code blocks from protobuf files so that they work under rustdoc tests. - `prost-build` now generates `as_str_name` for message types. ### [`v0.10.4`](https://togithub.com/tokio-rs/prost/releases/tag/v0.10.4) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.10.3...v0.10.4) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. Small fix for compiling protoc from source to speed up compile times. ### [`v0.10.3`](https://togithub.com/tokio-rs/prost/releases/tag/v0.10.3) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.10.2...v0.10.3) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This release reverts [#​605](https://togithub.com/tokio-rs/prost/issues/605) and contains some typo fixes. (this release is actually the `v0.10.2` release but `prost-build` had to be yanked because of a local publish issue) ### [`v0.10.2`](https://togithub.com/tokio-rs/prost/releases/tag/v0.10.2) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.10.1...v0.10.2) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This release reverts [#​605](https://togithub.com/tokio-rs/prost/issues/605) and contains some typo fixes. (this release was yanked due to missing third-party source, `v0.10.3` is now the active release for this) ### [`v0.10.1`](https://togithub.com/tokio-rs/prost/releases/tag/v0.10.1) [Compare Source](https://togithub.com/tokio-rs/prost/compare/v0.10.0...v0.10.1) *PROST!* is a [Protocol Buffers](https://developers.google.com/protocol-buffers/) implementation for the [Rust Language](https://www.rust-lang.org/). `prost` generates simple, idiomatic Rust code from `proto2` and `proto3` files. This minor release brings no new code changes but symlinks license files in all the crates.
testcontainers/testcontainers-rs (testcontainers) ### [`v0.14.0`](https://togithub.com/testcontainers/testcontainers-rs/blob/HEAD/CHANGELOG.md#0140---2022-05-30) ##### Added - Added `watchdog` feature that spawns a background thread keeping track of docker containers that are started by the test suite and removes them in the case of a `CTRL+C` or `kill` of the test process. - Introduced `Container::get_host_port_ipv4`, `Container::get_host_port_ipv6`, `ContainerState::host_port_ipv4`, and `ContainerState::host_port_ipv6` to better handle automatically assigned ports. Docker may bind the same exposed container port to different host ports on `0.0.0.0` and `::`, depending on influences from the environment. ##### Changed - `Container::get_host_port` and `ContainerState::host_port` are now deprecated in favor of the new IPv4- and IPv6-specific methods. - MSRV is now 1.60.
tokio-rs/tokio (tokio) ### [`v1.29.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.29.1): Tokio v1.29.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.29.0...tokio-1.29.1) ##### Fixed - rt: fix nesting two `block_in_place` with a `block_on` between ([#​5837]) [#​5837]: https://togithub.com/tokio-rs/tokio/pull/5837 ### [`v1.29.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.29.0): Tokio v1.29.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.28.2...tokio-1.29.0) Technically a breaking change, the `Send` implementation is removed from `runtime::EnterGuard`. This change fixes a bug and should not impact most users. ##### Breaking - rt: `EnterGuard` should not be `Send` ([#​5766]) ##### Fixed - fs: reduce blocking ops in `fs::read_dir` ([#​5653]) - rt: fix possible starvation ([#​5686], [#​5712]) - rt: fix stacked borrows issue in `JoinSet` ([#​5693]) - rt: panic if `EnterGuard` dropped incorrect order ([#​5772]) - time: do not overflow to signal value ([#​5710]) - fs: wait for in-flight ops before cloning `File` ([#​5803]) ##### Changed - rt: reduce time to poll tasks scheduled from outside the runtime ([#​5705], [#​5720]) ##### Added - net: add uds doc alias for unix sockets ([#​5659]) - rt: add metric for number of tasks ([#​5628]) - sync: implement more traits for channel errors ([#​5666]) - net: add nodelay methods on TcpSocket ([#​5672]) - sync: add `broadcast::Receiver::blocking_recv` ([#​5690]) - process: add `raw_arg` method to `Command` ([#​5704]) - io: support PRIORITY epoll events ([#​5566]) - task: add `JoinSet::poll_join_next` ([#​5721]) - net: add support for Redox OS ([#​5790]) ##### Unstable - rt: add the ability to dump task backtraces ([#​5608], [#​5676], [#​5708], [#​5717]) - rt: instrument task poll times with a histogram ([#​5685]) [#​5766]: https://togithub.com/tokio-rs/tokio/pull/5766 [#​5653]: https://togithub.com/tokio-rs/tokio/pull/5653 [#​5686]: https://togithub.com/tokio-rs/tokio/pull/5686 [#​5712]: https://togithub.com/tokio-rs/tokio/pull/5712 [#​5693]: https://togithub.com/tokio-rs/tokio/pull/5693 [#​5772]: https://togithub.com/tokio-rs/tokio/pull/5772 [#​5710]: https://togithub.com/tokio-rs/tokio/pull/5710 [#​5803]: https://togithub.com/tokio-rs/tokio/pull/5803 [#​5705]: https://togithub.com/tokio-rs/tokio/pull/5705 [#​5720]: https://togithub.com/tokio-rs/tokio/pull/5720 [#​5659]: https://togithub.com/tokio-rs/tokio/pull/5659 [#​5628]: https://togithub.com/tokio-rs/tokio/pull/5628 [#​5666]: https://togithub.com/tokio-rs/tokio/pull/5666 [#​5672]: https://togithub.com/tokio-rs/tokio/pull/5672 [#​5690]: https://togithub.com/tokio-rs/tokio/pull/5690 [#​5704]: https://togithub.com/tokio-rs/tokio/pull/5704 [#​5566]: https://togithub.com/tokio-rs/tokio/pull/5566 [#​5721]: https://togithub.com/tokio-rs/tokio/pull/5721 [#​5790]: https://togithub.com/tokio-rs/tokio/pull/5790 [#​5608]: https://togithub.com/tokio-rs/tokio/pull/5608 [#​5676]: https://togithub.com/tokio-rs/tokio/pull/5676 [#​5708]: https://togithub.com/tokio-rs/tokio/pull/5708 [#​5717]: https://togithub.com/tokio-rs/tokio/pull/5717 [#​5685]: https://togithub.com/tokio-rs/tokio/pull/5685 ### [`v1.28.2`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.28.2): Tokio v1.28.2 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.28.1...tokio-1.28.2) ### 1.28.2 (May 28, 2023) Forward ports 1.18.6 changes. ##### Fixed - deps: disable default features for mio ([#​5728]) [#​5728]: https://togithub.com/tokio-rs/tokio/pull/5728 ### [`v1.28.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.28.1): Tokio v1.28.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.28.0...tokio-1.28.1) ### 1.28.1 (May 10th, 2023) This release fixes a mistake in the build script that makes `AsFd` implementations unavailable on Rust 1.63. ([#​5677]) [#​5677]: https://togithub.com/tokio-rs/tokio/pull/5677 ### [`v1.28.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.28.0): Tokio v1.28.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.27.0...tokio-1.28.0) ### 1.28.0 (April 25th, 2023) ##### Added - io: add `AsyncFd::async_io` ([#​5542]) - io: impl BufMut for ReadBuf ([#​5590]) - net: add `recv_buf` for `UdpSocket` and `UnixDatagram` ([#​5583]) - sync: add `OwnedSemaphorePermit::semaphore` ([#​5618]) - sync: add `same_channel` to broadcast channel ([#​5607]) - sync: add `watch::Receiver::wait_for` ([#​5611]) - task: add `JoinSet::spawn_blocking` and `JoinSet::spawn_blocking_on` ([#​5612]) ##### Changed - deps: update windows-sys to 0.48 ([#​5591]) - io: make `read_to_end` not grow unnecessarily ([#​5610]) - macros: make entrypoints more efficient ([#​5621]) - sync: improve Debug impl for `RwLock` ([#​5647]) - sync: reduce contention in `Notify` ([#​5503]) ##### Fixed - net: support `get_peer_cred` on AIX ([#​5065]) - sync: avoid deadlocks in `broadcast` with custom wakers ([#​5578]) ##### Documented - sync: fix typo in `Semaphore::MAX_PERMITS` ([#​5645]) - sync: fix typo in `tokio::sync::watch::Sender` docs ([#​5587]) [#​5065]: https://togithub.com/tokio-rs/tokio/pull/5065 [#​5503]: https://togithub.com/tokio-rs/tokio/pull/5503 [#​5542]: https://togithub.com/tokio-rs/tokio/pull/5542 [#​5578]: https://togithub.com/tokio-rs/tokio/pull/5578 [#​5583]: https://togithub.com/tokio-rs/tokio/pull/5583 [#​5587]: https://togithub.com/tokio-rs/tokio/pull/5587 [#​5590]: https://togithub.com/tokio-rs/tokio/pull/5590 [#​5591]: https://togithub.com/tokio-rs/tokio/pull/5591 [#​5607]: https://togithub.com/tokio-rs/tokio/pull/5607 [#​5610]: https://togithub.com/tokio-rs/tokio/pull/5610 [#​5611]: https://togithub.com/tokio-rs/tokio/pull/5611 [#​5612]: https://togithub.com/tokio-rs/tokio/pull/5612 [#​5618]: https://togithub.com/tokio-rs/tokio/pull/5618 [#​5621]: https://togithub.com/tokio-rs/tokio/pull/5621 [#​5645]: https://togithub.com/tokio-rs/tokio/pull/5645 [#​5647]: https://togithub.com/tokio-rs/tokio/pull/5647 ### [`v1.27.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.27.0): Tokio v1.27.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.26.0...tokio-1.27.0) ### 1.27.0 (March 27th, 2023) This release bumps the MSRV of Tokio to 1.56. ([#​5559]) ##### Added - io: add `async_io` helper method to sockets ([#​5512]) - io: add implementations of `AsFd`/`AsHandle`/`AsSocket` ([#​5514], [#​5540]) - net: add `UdpSocket::peek_sender()` ([#​5520]) - sync: add `RwLockWriteGuard::{downgrade_map, try_downgrade_map}` ([#​5527]) - task: add `JoinHandle::abort_handle` ([#​5543]) ##### Changed - io: use `memchr` from `libc` ([#​5558]) - macros: accept path as crate rename in `#[tokio::main]` ([#​5557]) - macros: update to syn 2.0.0 ([#​5572]) - time: don't register for a wakeup when `Interval` returns `Ready` ([#​5553]) ##### Fixed - fs: fuse std iterator in `ReadDir` ([#​5555]) - tracing: fix `spawn_blocking` location fields ([#​5573]) - time: clean up redundant check in `Wheel::poll()` ([#​5574]) ##### Documented - macros: define cancellation safety ([#​5525]) - io: add details to docs of `tokio::io::copy[_buf]` ([#​5575]) - io: refer to `ReaderStream` and `StreamReader` in module docs ([#​5576]) [#​5512]: https://togithub.com/tokio-rs/tokio/pull/5512 [#​5514]: https://togithub.com/tokio-rs/tokio/pull/5514 [#​5520]: https://togithub.com/tokio-rs/tokio/pull/5520 [#​5525]: https://togithub.com/tokio-rs/tokio/pull/5525 [#​5527]: https://togithub.com/tokio-rs/tokio/pull/5527 [#​5540]: https://togithub.com/tokio-rs/tokio/pull/5540 [#​5543]: https://togithub.com/tokio-rs/tokio/pull/5543 [#​5553]: https://togithub.com/tokio-rs/tokio/pull/5553 [#​5555]: https://togithub.com/tokio-rs/tokio/pull/5555 [#​5557]: https://togithub.com/tokio-rs/tokio/pull/5557 [#​5558]: https://togithub.com/tokio-rs/tokio/pull/5558 [#​5559]: https://togithub.com/tokio-rs/tokio/pull/5559 [#​5572]: https://togithub.com/tokio-rs/tokio/pull/5572 [#​5573]: https://togithub.com/tokio-rs/tokio/pull/5573 [#​5574]: https://togithub.com/tokio-rs/tokio/pull/5574 [#​5575]: https://togithub.com/tokio-rs/tokio/pull/5575 [#​5576]: https://togithub.com/tokio-rs/tokio/pull/5576 ### [`v1.26.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.26.0): Tokio v1.26.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.25.1...tokio-1.26.0) ##### Fixed - macros: fix empty `join!` and `try_join!` ([[https://github.com/tokio-rs/tokio/pull/5504](https://togithub.com/tokio-rs/tokio/pull/5504)]) - sync: don't leak tracing spans in mutex guards ([[https://github.com/tokio-rs/tokio/pull/5469](https://togithub.com/tokio-rs/tokio/pull/5469)]) - sync: drop wakers after unlocking the mutex in Notify ([[https://github.com/tokio-rs/tokio/pull/5471](https://togithub.com/tokio-rs/tokio/pull/5471)]) - sync: drop wakers outside lock in semaphore ([[https://github.com/tokio-rs/tokio/pull/5475](https://togithub.com/tokio-rs/tokio/pull/5475)]) ##### Added - fs: add `fs::try_exists` ([[https://github.com/tokio-rs/tokio/pull/4299](https://togithub.com/tokio-rs/tokio/pull/4299)]) - net: add types for named unix pipes ([[https://github.com/tokio-rs/tokio/pull/5351](https://togithub.com/tokio-rs/tokio/pull/5351)]) - sync: add `MappedOwnedMutexGuard` ([[https://github.com/tokio-rs/tokio/pull/5474](https://togithub.com/tokio-rs/tokio/pull/5474)]) ##### Changed - chore: update windows-sys to 0.45 ([[https://github.com/tokio-rs/tokio/pull/5386](https://togithub.com/tokio-rs/tokio/pull/5386)]) - net: use Message Read Mode for named pipes ([[https://github.com/tokio-rs/tokio/pull/5350](https://togithub.com/tokio-rs/tokio/pull/5350)]) - sync: mark lock guards with `#[clippy::has_significant_drop]` ([[https://github.com/tokio-rs/tokio/pull/5422](https://togithub.com/tokio-rs/tokio/pull/5422)]) - sync: reduce contention in watch channel ([[https://github.com/tokio-rs/tokio/pull/5464](https://togithub.com/tokio-rs/tokio/pull/5464)]) - time: remove cache padding in timer entries ([[https://github.com/tokio-rs/tokio/pull/5468](https://togithub.com/tokio-rs/tokio/pull/5468)]) - time: Improve `Instant::now()` perf with test-util ([[https://github.com/tokio-rs/tokio/pull/5513](https://togithub.com/tokio-rs/tokio/pull/5513)]) ##### Internal Changes - io: use `poll_fn` in `copy_bidirectional` ([[https://github.com/tokio-rs/tokio/pull/5486](https://togithub.com/tokio-rs/tokio/pull/5486)]) - net: refactor named pipe builders to not use bitfields ([[https://github.com/tokio-rs/tokio/pull/5477](https://togithub.com/tokio-rs/tokio/pull/5477)]) - rt: remove Arc from Clock ([[https://github.com/tokio-rs/tokio/pull/5434](https://togithub.com/tokio-rs/tokio/pull/5434)]) - sync: make `notify_waiters` calls atomic ([[https://github.com/tokio-rs/tokio/pull/5458](https://togithub.com/tokio-rs/tokio/pull/5458)]) - time: don't store deadline twice in sleep entries ([[https://github.com/tokio-rs/tokio/pull/5410](https://togithub.com/tokio-rs/tokio/pull/5410)]) ##### Unstable - metrics: add a new metric for budget exhaustion yields ([[https://github.com/tokio-rs/tokio/pull/5517](https://togithub.com/tokio-rs/tokio/pull/5517)]) ##### Documented - io: improve AsyncFd example ([[https://github.com/tokio-rs/tokio/pull/5481](https://togithub.com/tokio-rs/tokio/pull/5481)]) - runtime: document the nature of the main future ([[https://github.com/tokio-rs/tokio/pull/5494](https://togithub.com/tokio-rs/tokio/pull/5494)]) - runtime: remove extra period in docs ([[https://github.com/tokio-rs/tokio/pull/5511](https://togithub.com/tokio-rs/tokio/pull/5511)]) - signal: updated Documentation for Signals ([[https://github.com/tokio-rs/tokio/pull/5459](https://togithub.com/tokio-rs/tokio/pull/5459)]) - sync: add doc aliases for `blocking_*` methods ([[https://github.com/tokio-rs/tokio/pull/5448](https://togithub.com/tokio-rs/tokio/pull/5448)]) - sync: fix docs for Send/Sync bounds in broadcast ([[https://github.com/tokio-rs/tokio/pull/5480](https://togithub.com/tokio-rs/tokio/pull/5480)]) - sync: document drop behavior for channels ([[https://github.com/tokio-rs/tokio/pull/5497](https://togithub.com/tokio-rs/tokio/pull/5497)]) - task: clarify what happens to spawned work during runtime shutdown ([[https://github.com/tokio-rs/tokio/pull/5394](https://togithub.com/tokio-rs/tokio/pull/5394)]) - task: clarify `process::Command` docs ([[https://github.com/tokio-rs/tokio/pull/5413](https://togithub.com/tokio-rs/tokio/pull/5413)]) - task: fix wording with 'unsend' ([[https://github.com/tokio-rs/tokio/pull/5452](https://togithub.com/tokio-rs/tokio/pull/5452)]) - time: document immediate completion guarantee for timeouts ([[https://github.com/tokio-rs/tokio/pull/5509](https://togithub.com/tokio-rs/tokio/pull/5509)]) - tokio: document supported platforms ([[https://github.com/tokio-rs/tokio/pull/5483](https://togithub.com/tokio-rs/tokio/pull/5483)]) [https://github.com/tokio-rs/tokio/pull/4299]: https://togithub.com/tokio-rs/tokio/pull/4299 [https://github.com/tokio-rs/tokio/pull/5350]: https://togithub.com/tokio-rs/tokio/pull/5350 [https://github.com/tokio-rs/tokio/pull/5351]: https://togithub.com/tokio-rs/tokio/pull/5351 [https://github.com/tokio-rs/tokio/pull/5386]: https://togithub.com/tokio-rs/tokio/pull/5386 [https://github.com/tokio-rs/tokio/pull/5394]: https://togithub.com/tokio-rs/tokio/pull/5394 [https://github.com/tokio-rs/tokio/pull/5410]: https://togithub.com/tokio-rs/tokio/pull/5410 [https://github.com/tokio-rs/tokio/pull/5413]: https://togithub.com/tokio-rs/tokio/pull/5413 [https://github.com/tokio-rs/tokio/pull/5422]: https://togithub.com/tokio-rs/tokio/pull/5422 [https://github.com/tokio-rs/tokio/pull/5434]: https://togithub.com/tokio-rs/tokio/pull/5434 [https://github.com/tokio-rs/tokio/pull/5448]: https://togithub.com/tokio-rs/tokio/pull/5448 [https://github.com/tokio-rs/tokio/pull/5452]: https://togithub.com/tokio-rs/tokio/pull/5452 [https://github.com/tokio-rs/tokio/pull/5458]: https://togithub.com/tokio-rs/tokio/pull/5458 [https://github.com/tokio-rs/tokio/pull/5459]: https://togithub.com/tokio-rs/tokio/pull/5459 [https://github.com/tokio-rs/tokio/pull/5464]: https://togithub.com/tokio-rs/tokio/pull/5464 [https://github.com/tokio-rs/tokio/pull/5468]: https://togithub.com/tokio-rs/tokio/pull/5468 [https://github.com/tokio-rs/tokio/pull/5469]: https://togithub.com/tokio-rs/tokio/pull/5469 [https://github.com/tokio-rs/tokio/pull/5471]: https://togithub.com/tokio-rs/tokio/pull/5471 [https://github.com/tokio-rs/tokio/pull/5474]: https://togithub.com/tokio-rs/tokio/pull/5474 [https://github.com/tokio-rs/tokio/pull/5475]: https://togithub.com/tokio-rs/tokio/pull/5475 [https://github.com/tokio-rs/tokio/pull/5477]: https://togithub.com/tokio-rs/tokio/pull/5477 [https://github.com/tokio-rs/tokio/pull/5480]: https://togithub.com/tokio-rs/tokio/pull/5480 [https://github.com/tokio-rs/tokio/pull/5481]: https://togithub.com/tokio-rs/tokio/pull/5481 [https://github.com/tokio-rs/tokio/pull/5483]: https://togithub.com/tokio-rs/tokio/pull/5483 [https://github.com/tokio-rs/tokio/pull/5486]: https://togithub.com/tokio-rs/tokio/pull/5486 [https://github.com/tokio-rs/tokio/pull/5494]: https://togithub.com/tokio-rs/tokio/pull/5494 [https://github.com/tokio-rs/tokio/pull/5497]: https://togithub.com/tokio-rs/tokio/pull/5497 [https://github.com/tokio-rs/tokio/pull/5504]: https://togithub.com/tokio-rs/tokio/pull/5504 [https://github.com/tokio-rs/tokio/pull/5509]: https://togithub.com/tokio-rs/tokio/pull/5509 [https://github.com/tokio-rs/tokio/pull/5511]: https://togithub.com/tokio-rs/tokio/pull/5511 [https://github.com/tokio-rs/tokio/pull/5513]: https://togithub.com/tokio-rs/tokio/pull/5513 [https://github.com/tokio-rs/tokio/pull/5517]: https://togithub.com/tokio-rs/tokio/pull/5517 ### [`v1.25.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.25.1): Tokio v1.25.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.25.0...tokio-1.25.1) ### 1.25.1 (May 28, 2023) Forward ports 1.18.6 changes. ##### Fixed - deps: disable default features for mio ([#​5728]) [#​5728]: https://togithub.com/tokio-rs/tokio/pull/5728 ### [`v1.25.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.25.0): Tokio v1.25.0 ### 1.25.0 (January 28, 2023) ##### Fixed - rt: fix runtime metrics reporting ([#​5330]) ##### Added - sync: add `broadcast::Sender::len` ([#​5343]) ##### Changed - fs: increase maximum read buffer size to 2MiB ([#​5397]) [#​5330]: https://togithub.com/tokio-rs/tokio/pull/5330 [#​5343]: https://togithub.com/tokio-rs/tokio/pull/5343 [#​5397]: https://togithub.com/tokio-rs/tokio/pull/5397 ### [`v1.24.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.24.1): Tokio v1.24.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.24.0...tokio-1.24.1) This release fixes a compilation failure on targets without `AtomicU64` when using rustc older than 1.63. ([#​5356]) [#​5356]: https://togithub.com/tokio-rs/tokio/pull/5356 ### [`v1.24.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.24.0): Tokio v1.24.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.23.1...tokio-1.24.0) The highlight of this release is the reduction of lock contention for all I/O operations ([#​5300](https://togithub.com/tokio-rs/tokio/issues/5300)). We have received reports of up to a 20% improvement in CPU utilization and increased throughput for real-world I/O heavy applications. ##### Fixed - rt: improve native `AtomicU64` support detection ([#​5284]) ##### Added - rt: add configuration option for max number of I/O events polled from the OS per tick ([#​5186]) - rt: add an environment variable for configuring the default number of worker threads per runtime instance ([#​4250]) ##### Changed - sync: reduce MPSC channel stack usage ([#​5294]) - io: reduce lock contention in I/O operations ([#​5300]) - fs: speed up `read_dir()` by chunking operations ([#​5309]) - rt: use internal `ThreadId` implementation ([#​5329]) - test: don't auto-advance time when a `spawn_blocking` task is running ([#​5115]) [#​5186]: https://togithub.com/tokio-rs/tokio/pull/5186 [#​5294]: https://togithub.com/tokio-rs/tokio/pull/5294 [#​5284]: https://togithub.com/tokio-rs/tokio/pull/5284 [#​4250]: https://togithub.com/tokio-rs/tokio/pull/4250 [#​5300]: https://togithub.com/tokio-rs/tokio/pull/5300 [#​5329]: https://togithub.com/tokio-rs/tokio/pull/5329 [#​5115]: https://togithub.com/tokio-rs/tokio/pull/5115 [#​5309]: https://togithub.com/tokio-rs/tokio/pull/5309 ### [`v1.23.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.23.1): Tokio v1.23.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.23.0...tokio-1.23.1) This release forward ports changes from 1.18.4. ##### Fixed - net: fix Windows named pipe server builder to maintain option when toggling pipe mode ([#​5336]). [#​5336]: https://togithub.com/tokio-rs/tokio/pull/5336 ### [`v1.23.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.23.0): Tokio v1.23.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.22.0...tokio-1.23.0) ##### Fixed - net: fix Windows named pipe connect ([#​5208]) - io: support vectored writes for `ChildStdin` ([#​5216]) - io: fix `async fn ready()` false positive for OS-specific events ([#​5231]) ##### Changed - runtime: `yield_now` defers task until after driver poll ([#​5223]) - runtime: reduce amount of codegen needed per spawned task ([#​5213]) - windows: replace `winapi` dependency with `windows-sys` ([#​5204]) [#​5208]: https://togithub.com/tokio-rs/tokio/pull/5208 [#​5216]: https://togithub.com/tokio-rs/tokio/pull/5216 [#​5213]: https://togithub.com/tokio-rs/tokio/pull/5213 [#​5204]: https://togithub.com/tokio-rs/tokio/pull/5204 [#​5223]: https://togithub.com/tokio-rs/tokio/pull/5223 [#​5231]: https://togithub.com/tokio-rs/tokio/pull/5231 ### [`v1.22.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.22.0): Tokio v1.22.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.21.2...tokio-1.22.0) ##### Added - runtime: add `Handle::runtime_flavor` ([#​5138]) - sync: add `Mutex::blocking_lock_owned` ([#​5130]) - sync: add `Semaphore::MAX_PERMITS` ([#​5144]) - sync: add `merge()` to semaphore permits ([#​4948]) - sync: add `mpsc::WeakUnboundedSender` ([#​5189]) ##### Added (unstable) - process: add `Command::process_group` ([#​5114]) - runtime: export metrics about the blocking thread pool ([#​5161]) - task: add `task::id()` and `task::try_id()` ([#​5171]) ##### Fixed - macros: don't take ownership of futures in macros ([#​5087]) - runtime: fix Stacked Borrows violation in `LocalOwnedTasks` ([#​5099]) - runtime: mitigate ABA with 32-bit queue indices when possible ([#​5042]) - task: wake local tasks to the local queue when woken by the same thread ([#​5095]) - time: panic in release mode when `mark_pending` called illegally ([#​5093]) - runtime: fix typo in expect message ([#​5169]) - runtime: fix `unsync_load` on atomic types ([#​5175]) - task: elaborate safety comments in task deallocation ([#​5172]) - runtime: fix `LocalSet` drop in thread local ([#​5179]) - net: remove libc type leakage in a public API ([#​5191]) - runtime: update the alignment of `CachePadded` ([#​5106]) ##### Changed - io: make `tokio::io::copy` continue filling the buffer when writer stalls ([#​5066]) - runtime: remove `coop::budget` from `LocalSet::run_until` ([#​5155]) - sync: make `Notify` panic safe ([#​5154]) ##### Documented - io: fix doc for `write_i8` to use signed integers ([#​5040]) - net: fix doc typos for TCP and UDP `set_tos` methods ([#​5073]) - net: fix function name in `UdpSocket::recv` documentation ([#​5150]) - sync: typo in `TryLockError` for `RwLock::try_write` ([#​5160]) - task: document that spawned tasks execute immediately ([#​5117]) - time: document return type of `timeout` ([#​5118]) - time: document that `timeout` checks only before poll ([#​5126]) - sync: specify return type of `oneshot::Receiver` in docs ([#​5198]) ##### Internal changes - runtime: use const `Mutex::new` for globals ([#​5061]) - runtime: remove `Option` around `mio::Events` in io driver ([#​5078]) - runtime: remove a conditional compilation clause ([#​5104]) - runtime: remove a reference to internal time handle ([#​5107]) - runtime: misc time driver cleanup ([#​5120]) - runtime: move signal driver to runtime module ([#​5121]) - runtime: signal driver now uses I/O driver directly ([#​5125]) - runtime: start decoupling I/O driver and I/O handle ([#​5127]) - runtime: switch `io::handle` refs with scheduler:Handle ([#​5128]) - runtime: remove Arc from I/O driver ([#​5134]) - runtime: use signal driver handle via `scheduler::Handle` ([#​5135]) - runtime: move internal clock fns out of context ([#​5139]) - runtime: remove `runtime::context` module ([#​5140]) - runtime: keep driver cfgs in `driver.rs` ([#​5141]) - runtime: add `runtime::context` to unify thread-locals ([#​5143]) - runtime: rename some confusing internal variables/fns ([#​5151]) - runtime: move `coop` mod into `runtime` ([#​5152]) - runtime: move budget state to context thread-local ([#​5157]) - runtime: move park logic into runtime module ([#​5158]) - runtime: move `Runtime` into its own file ([#​5159]) - runtime: unify entering a runtime with `Handle::enter` ([#​5163]) - runtime: remove handle reference from each scheduler ([#​5166]) - runtime: move `enter` into `context` ([#​5167]) - runtime: combine context and entered thread-locals ([#​5168]) - runtime: fix accidental unsetting of current handle ([#​5178]) - runtime: move `CoreStage` methods to `Core` ([#​5182]) - sync: name mpsc semaphore types ([#​5146]) [#​4948]: https://togithub.com/tokio-rs/tokio/pull/4948 [#​5040]: https://togithub.com/tokio-rs/tokio/pull/5040 [#​5042]: https://togithub.com/tokio-rs/tokio/pull/5042 [#​5061]: https://togithub.com/tokio-rs/tokio/pull/5061 [#​5066]: https://togithub.com/tokio-rs/tokio/pull/5066 [#​5073]: https://togithub.com/tokio-rs/tokio/pull/5073 [#​5078]: https://togithub.com/tokio-rs/tokio/pull/5078 [#​5087]: https://togithub.com/tokio-rs/tokio/pull/5087 [#​5093]: https://togithub.com/tokio-rs/tokio/pull/5093 [#​5095]: https://togithub.com/tokio-rs/tokio/pull/5095 [#​5099]: https://togithub.com/tokio-rs/tokio/pull/5099 [#​5104]: https://togithub.com/tokio-rs/tokio/pull/5104 [#​5106]: https://togithub.com/tokio-rs/tokio/pull/5106 [#​5107]: https://togithub.com/tokio-rs/tokio/pull/5107 [#​5114]: https://togithub.com/tokio-rs/tokio/pull/5114 [#​5117]: https://togithub.com/tokio-rs/tokio/pull/5117 [#​5118]: https://togithub.com/tokio-rs/tokio/pull/5118 [#​5120]: https://togithub.com/tokio-rs/tokio/pull/5120 [#​5121]: https://togithub.com/tokio-rs/tokio/pull/5121 [#​5125]: https://togithub.com/tokio-rs/tokio/pull/5125 [#​5126]: https://togithub.com/tokio-rs/tokio/pull/5126 [#​5127]: https://togithub.com/tokio-rs/tokio/pull/5127 [#​5128]: https://togithub.com/tokio-rs/tokio/pull/5128 [#​5130]: https://togithub.com/tokio-rs/tokio/pull/5130 [#​5134]: https://togithub.com/tokio-rs/tokio/pull/5134 [#​5135]: https://togithub.com/tokio-rs/tokio/pull/5135 [#​5138]: https://togithub.com/tokio-rs/tokio/pull/5138 [#​5138]: https://togithub.com/tokio-rs/tokio/pull/5138 [#​5139]: https://togithub.com/tokio-rs/tokio/pull/5139 [#​5140]: https://togithub.com/tokio-rs/tokio/pull/5140 [#​5141]: https://togithub.com/tokio-rs/tokio/pull/5141 [#​5143]: https://togithub.com/tokio-rs/tokio/pull/5143 [#​5144]: https://togithub.com/tokio-rs/tokio/pull/5144 [#​5144]: https://togithub.com/tokio-rs/tokio/pull/5144 [#​5146]: https://togithub.com/tokio-rs/tokio/pull/5146 [#​5150]: https://togithub.com/tokio-rs/tokio/pull/5150 [#​5151]: https://togithub.com/tokio-rs/tokio/pull/5151 [#​5152]: https://togithub.com/tokio-rs/tokio/pull/5152 [#​5154]: https://togithub.com/tokio-rs/tokio/pull/5154 [#​5155]: https://togithub.com/tokio-rs/tokio/pull/5155 [#​5157]: https://togithub.com/tokio-rs/tokio/pull/5157 [#​5158]: https://togithub.com/tokio-rs/tokio/pull/5158 [#​5159]: https://togithub.com/tokio-rs/tokio/pull/5159 [#​5160]: https://togithub.com/tokio-rs/tokio/pull/5160 [#​5161]: https://togithub.com/tokio-rs/tokio/pull/5161 [#​5163]: https://togithub.com/tokio-rs/tokio/pull/5163 [#​5166]: https://togithub.com/tokio-rs/tokio/pull/5166 [#​5167]: https://togithub.com/tokio-rs/tokio/pull/5167 [#​5168]: https://togithub.com/tokio-rs/tokio/pull/5168 [#​5169]: https://togithub.com/tokio-rs/tokio/pull/5169 [#​5171]: https://togithub.com/tokio-rs/tokio/pull/5171 [#​5172]: https://togithub.com/tokio-rs/tokio/pull/5172 [#​5175]: https://togithub.com/tokio-rs/tokio/pull/5175 [#​5178]: https://togithub.com/tokio-rs/tokio/pull/5178 [#​5179]: https://togithub.com/tokio-rs/tokio/pull/5179 [#​5182]: https://togithub.com/tokio-rs/tokio/pull/5182 [#​5189]: https://togithub.com/tokio-rs/tokio/pull/5189 [#​5191]: https://togithub.com/tokio-rs/tokio/pull/5191 [#​5198]: https://togithub.com/tokio-rs/tokio/pull/5198 ### [`v1.21.2`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.21.2): Tokio v1.21.2 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.21.1...tokio-1.21.2) ### 1.21.2 (September 27, 2022) This release removes the dependency on the `once_cell` crate to restore the MSRV of 1.21.x, which is the latest minor version at the time of release. ([#​5048]) [#​5048]: https://togithub.com/tokio-rs/tokio/pull/5048 ### [`v1.21.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.21.1): Tokio v1.21.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.21.0...tokio-1.21.1) ### 1.21.1 (September 13, 2022) ##### Fixed - net: fix dependency resolution for socket2 ([#​5000]) - task: ignore failure to set TLS in `LocalSet` Drop ([#​4976]) [#​4976]: https://togithub.com/tokio-rs/tokio/pull/4976 [#​5000]: https://togithub.com/tokio-rs/tokio/pull/5000 ### [`v1.21.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.21.0): Tokio v1.21.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.5...tokio-1.21.0) ### 1.21.0 (September 2, 2022) This release is the first release of Tokio to intentionally support WASM. The `sync,macros,io-util,rt,time` features are stabilized on WASM. Additionally the wasm32-wasi target is given unstable support for the `net` feature. ##### Added - net: add `device` and `bind_device` methods to TCP/UDP sockets ([#​4882]) - net: add `tos` and `set_tos` methods to TCP and UDP sockets ([#​4877]) - net: add security flags to named pipe `ServerOptions` ([#​4845]) - signal: add more windows signal handlers ([#​4924]) - sync: add `mpsc::Sender::max_capacity` method ([#​4904]) - sync: implement Weak version of `mpsc::Sender` ([#​4595]) - task: add `LocalSet::enter` ([#​4765]) - task: stabilize `JoinSet` and `AbortHandle` ([#​4920]) - tokio: add `track_caller` to public APIs ([#​4805], [#​4848], [#​4852]) - wasm: initial support for `wasm32-wasi` target ([#​4716]) ##### Fixed - miri: improve miri compatibility by avoiding temporary references in `linked_list::Link` impls ([#​4841]) - signal: don't register write interest on signal pipe ([#​4898]) - sync: add `#[must_use]` to lock guards ([#​4886]) - sync: fix hang when calling `recv` on closed and reopened broadcast channel ([#​4867]) - task: propagate attributes on task-locals ([#​4837]) ##### Changed - fs: change panic to error in `File::start_seek` ([#​4897]) - io: reduce syscalls in `poll_read` ([#​4840]) - process: use blocking threadpool for child stdio I/O ([#​4824]) - signal: make `SignalKind` methods const ([#​4956]) ##### Internal changes - rt: extract `basic_scheduler::Config` ([#​4935]) - rt: move I/O driver into `runtime` module ([#​4942]) - rt: rename internal scheduler types ([#​4945]) ##### Documented - chore: fix typos and grammar ([#​4858], [#​4894], [#​4928]) - io: fix typo in `AsyncSeekExt::rewind` docs ([#​4893]) - net: add documentation to `try_read()` for zero-length buffers ([#​4937]) - runtime: remove incorrect panic section for `Builder::worker_threads` ([#​4849]) - sync: doc of `watch::Sender::send` improved ([#​4959]) - task: add cancel safety docs to `JoinHandle` ([#​4901]) - task: expand on cancellation of `spawn_blocking` ([#​4811]) - time: clarify that the first tick of `Interval::tick` happens immediately ([#​4951]) ##### Unstable - rt: add unstable option to disable the LIFO slot ([#​4936]) - task: fix incorrect signature in `Builder::spawn_on` ([#​4953]) - task: make `task::Builder::spawn*` methods fallible ([#​4823]) [#​4595]: https://togithub.com/tokio-rs/tokio/pull/4595 [#​4716]: https://togithub.com/tokio-rs/tokio/pull/4716 [#​4765]: https://togithub.com/tokio-rs/tokio/pull/4765 [#​4805]: https://togithub.com/tokio-rs/tokio/pull/4805 [#​4811]: https://togithub.com/tokio-rs/tokio/pull/4811 [#​4823]: https://togithub.com/tokio-rs/tokio/pull/4823 [#​4824]: https://togithub.com/tokio-rs/tokio/pull/4824 [#​4837]: https://togithub.com/tokio-rs/tokio/pull/4837 [#​4840]: https://togithub.com/tokio-rs/tokio/pull/4840 [#​4841]: https://togithub.com/tokio-rs/tokio/pull/4841 [#​4845]: https://togithub.com/tokio-rs/tokio/pull/4845 [#​4848]: https://togithub.com/tokio-rs/tokio/pull/4848 [#​4849]: https://togithub.com/tokio-rs/tokio/pull/4849 [#​4852]: https://togithub.com/tokio-rs/tokio/pull/4852 [#​4858]: https://togithub.com/tokio-rs/tokio/pull/4858 [#​4867]: https://togithub.com/tokio-rs/tokio/pull/4867 [#​4877]: https://togithub.com/tokio-rs/tokio/pull/4877 [#​4882]: https://togithub.com/tokio-rs/tokio/pull/4882 [#​4886]: https://togithub.com/tokio-rs/tokio/pull/4886 [#​4893]: https://togithub.com/tokio-rs/tokio/pull/4893 [#​4894]: https://togithub.com/tokio-rs/tokio/pull/4894 [#​4897]: https://togithub.com/tokio-rs/tokio/pull/4897 [#​4898]: https://togithub.com/tokio-rs/tokio/pull/4898 [#​4901]: https://togithub.com/tokio-rs/tokio/pull/4901 [#​4904]: https://togithub.com/tokio-rs/tokio/pull/4904 [#​4920]: https://togithub.com/tokio-rs/tokio/pull/4920 [#​4924]: https://togithub.com/tokio-rs/tokio/pull/4924 [#​4928]: https://togithub.com/tokio-rs/tokio/pull/4928 [#​4935]: https://togithub.com/tokio-rs/tokio/pull/4935 [#​4936]: https://togithub.com/tokio-rs/tokio/pull/4936 [#​4937]: https://togithub.com/tokio-rs/tokio/pull/4937 [#​4942]: https://togithub.com/tokio-rs/tokio/pull/4942 [#​4945]: https://togithub.com/tokio-rs/tokio/pull/4945 [#​4951]: https://togithub.com/tokio-rs/tokio/pull/4951 [#​4953]: https://togithub.com/tokio-rs/tokio/pull/4953 [#​4956]: https://togithub.com/tokio-rs/tokio/pull/4956 [#​4959]: https://togithub.com/tokio-rs/tokio/pull/4959 ### [`v1.20.5`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.20.5): Tokio v1.20.5 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.4...tokio-1.20.5) ### 1.20.5 (May 28, 2023) Forward ports 1.18.6 changes. ##### Fixed - deps: disable default features for mio ([#​5728]) [#​5728]: https://togithub.com/tokio-rs/tokio/pull/5728 ### [`v1.20.4`](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.3...tokio-1.20.4) [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.3...tokio-1.20.4) ### [`v1.20.3`](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.2...tokio-1.20.3) [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.2...tokio-1.20.3) ### [`v1.20.2`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.20.2): Tokio v1.20.2 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.1...tokio-1.20.2) ### 1.20.2 (September 27, 2022) This release removes the dependency on the `once_cell` crate to restore the MSRV of the 1.20.x LTS release. ([#​5048]) [#​5048]: https://togithub.com/tokio-rs/tokio/pull/5048 ### [`v1.20.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.20.1): Tokio v1.20.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.20.0...tokio-1.20.1) ### 1.20.1 (July 25, 2022) ##### Fixed - chore: fix version detection in build script ([#​4860]) [#​4860]: https://togithub.com/tokio-rs/tokio/pull/4860 ### [`v1.20.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.20.0): Tokio v1.20.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.19.2...tokio-1.20.0) ### 1.20.0 (July 12, 2022) ##### Added - tokio: add track_caller to public APIs ([#​4772], [#​4791], [#​4793], [#​4806], [#​4808]) - sync: Add `has_changed` method to `watch::Ref` ([#​4758]) ##### Changed - time: remove `src/time/driver/wheel/stack.rs` ([#​4766]) - rt: clean up arguments passed to basic scheduler ([#​4767]) - net: be more specific about winapi features ([#​4764]) - tokio: use const initialized thread locals where possible ([#​4677]) - task: various small improvements to LocalKey ([#​4795]) ##### Fixed ##### Documented - fs: warn about performance pitfall ([#​4762]) - chore: fix spelling ([#​4769]) - sync: document spurious failures in oneshot ([#​4777]) - sync: add warning for watch in non-Send futures ([#​4741]) - chore: fix typo ([#​4798]) ##### Unstable - joinset: rename `join_one` to `join_next` ([#​4755]) - rt: unhandled panic config for current thread rt ([#​4770]) [#​4677]: https://togithub.com/tokio-rs/tokio/pull/4677 [#​4741]: https://togithub.com/tokio-rs/tokio/pull/4741 [#​4755]: https://togithub.com/tokio-rs/tokio/pull/4755 [#​4758]: https://togithub.com/tokio-rs/tokio/pull/4758 [#​4762]: https://togithub.com/tokio-rs/tokio/pull/4762 [#​4764]: https://togithub.com/tokio-rs/tokio/pull/4764 [#​4766]: https://togithub.com/tokio-rs/tokio/pull/4766 [#​4767]: https://togithub.com/tokio-rs/tokio/pull/4767 [#​4769]: https://togithub.com/tokio-rs/tokio/pull/4769 [#​4770]: https://togithub.com/tokio-rs/tokio/pull/4770 [#​4772]: https://togithub.com/tokio-rs/tokio/pull/4772 [#​4777]: https://togithub.com/tokio-rs/tokio/pull/4777 [#​4791]: https://togithub.com/tokio-rs/tokio/pull/4791 [#​4793]: https://togithub.com/tokio-rs/tokio/pull/4793 [#​4795]: https://togithub.com/tokio-rs/tokio/pull/4795 [#​4798]: https://togithub.com/tokio-rs/tokio/pull/4798 [#​4806]: https://togithub.com/tokio-rs/tokio/pull/4806 [#​4808]: https://togithub.com/tokio-rs/tokio/pull/4808 ### [`v1.19.2`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.19.2): Tokio v1.19.2 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.19.1...tokio-1.19.2) ### 1.19.2 (June 6, 2022) This release fixes another bug in `Notified::enable`. ([#​4751]) [#​4751]: https://togithub.com/tokio-rs/tokio/pull/4751 ### [`v1.19.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.19.1): Tokio v1.19.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.19.0...tokio-1.19.1) ### 1.19.1 (June 5, 2022) This release fixes a bug in `Notified::enable`. ([#​4747]) [#​4747]: https://togithub.com/tokio-rs/tokio/pull/4747 ### [`v1.19.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.19.0): Tokio v1.19.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.6...tokio-1.19.0) ### 1.19.0 (June 3, 2022) ##### Added - runtime: add `is_finished` method for `JoinHandle` and `AbortHandle` ([#​4709]) - runtime: make global queue and event polling intervals configurable ([#​4671]) - sync: add `Notified::enable` ([#​4705]) - sync: add `watch::Sender::send_if_modified` ([#​4591]) - sync: add resubscribe method to broadcast::Receiver ([#​4607]) - net: add `take_error` to `TcpSocket` and `TcpStream` ([#​4739]) ##### Changed - io: refactor out usage of Weak in the io handle ([#​4656]) ##### Fixed - macros: avoid starvation in `join!` and `try_join!` ([#​4624]) ##### Documented - runtime: clarify semantics of tasks outliving `block_on` ([#​4729]) - time: fix example for `MissedTickBehavior::Burst` ([#​4713]) ##### Unstable - metrics: correctly update atomics in `IoDriverMetrics` ([#​4725]) - metrics: fix compilation with unstable, process, and rt, but without net ([#​4682]) - task: add `#[track_caller]` to `JoinSet`/`JoinMap` ([#​4697]) - task: add `Builder::{spawn_on, spawn_local_on, spawn_blocking_on}` ([#​4683]) - task: add `consume_budget` for cooperative scheduling ([#​4498]) - task: add `join_set::Builder` for configuring `JoinSet` tasks ([#​4687]) - task: update return value of `JoinSet::join_one` ([#​4726]) [#​4498]: https://togithub.com/tokio-rs/tokio/pull/4498 [#​4591]: https://togithub.com/tokio-rs/tokio/pull/4591 [#​4607]: https://togithub.com/tokio-rs/tokio/pull/4607 [#​4624]: https://togithub.com/tokio-rs/tokio/pull/4624 [#​4656]: https://togithub.com/tokio-rs/tokio/pull/4656 [#​4671]: https://togithub.com/tokio-rs/tokio/pull/4671 [#​4682]: https://togithub.com/tokio-rs/tokio/pull/4682 [#​4683]: https://togithub.com/tokio-rs/tokio/pull/4683 [#​4687]: https://togithub.com/tokio-rs/tokio/pull/4687 [#​4697]: https://togithub.com/tokio-rs/tokio/pull/4697 [#​4705]: https://togithub.com/tokio-rs/tokio/pull/4705 [#​4709]: https://togithub.com/tokio-rs/tokio/pull/4709 [#​4713]: https://togithub.com/tokio-rs/tokio/pull/4713 [#​4725]: https://togithub.com/tokio-rs/tokio/pull/4725 [#​4726]: https://togithub.com/tokio-rs/tokio/pull/4726 [#​4729]: https://togithub.com/tokio-rs/tokio/pull/4729 [#​4739]: https://togithub.com/tokio-rs/tokio/pull/4739 ### [`v1.18.6`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.18.6): Tokio v1.18.6 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.5...tokio-1.18.6) ### 1.18.6 (May 28, 2023) ##### Fixed - deps: disable default features for mio ([#​5728]) [#​5728]: https://togithub.com/tokio-rs/tokio/pull/5728 ### [`v1.18.5`](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.4...tokio-1.18.5) [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.4...tokio-1.18.5) ### [`v1.18.4`](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.3...tokio-1.18.4) [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.3...tokio-1.18.4) ### [`v1.18.3`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.18.3): Tokio v1.18.3 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.2...tokio-1.18.3) ### 1.18.3 (September 27, 2022) This release removes the dependency on the `once_cell` crate to restore the MSRV of the 1.18.x LTS release. ([#​5048]) [#​5048]: https://togithub.com/tokio-rs/tokio/pull/5048 ### [`v1.18.2`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.18.2): Tokio v1.18.2 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.1...tokio-1.18.2) ### 1.18.2 (May 5, 2022) Add missing features for the `winapi` dependency. ([#​4663]) [#​4663]: https://togithub.com/tokio-rs/tokio/pull/4663 ### [`v1.18.1`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.18.1): Tokio v1.18.1 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.18.0...tokio-1.18.1) ### 1.18.1 (May 2, 2022) The 1.18.0 release broke the build for targets without 64-bit atomics when building with `tokio_unstable`. This release fixes that. ([#​4649]) [#​4649]: https://togithub.com/tokio-rs/tokio/pull/4649 ### [`v1.18.0`](https://togithub.com/tokio-rs/tokio/releases/tag/tokio-1.18.0): Tokio v1.18.0 [Compare Source](https://togithub.com/tokio-rs/tokio/compare/tokio-1.17.0...tokio-1.18.0) ### 1.18.0 (April 27, 2022) This release adds a number of new APIs in `tokio::net`, `tokio::signal`, and `tokio::sync`. In addition, it adds new unstable APIs to `tokio::task` (`Id`s for uniquely identifying a task, and `AbortHandle` for remotely cancelling a task), as well as a number of bugfixes. ##### Fixed - blocking: add missing `#[track_caller]` for `spawn_blocking` ([#​4616](https://togithub.com/tokio-rs/tokio/issues/4616)) - macros: fix `select` macro to process 64 branches ([#​4519](https://togithub.com/tokio-rs/tokio/issues/4519)) - net: fix `try_io` methods not calling Mio's `try_io` internally ([#​4582](https://togithub.com/tokio-rs/tokio/issues/4582)) - runtime: recover when OS fails to spawn a new thread ([#​4485](https://togithub.com/tokio-rs/tokio/issues/4485)) ##### Added - net: add `UdpSocket::peer_addr` ([#​4611](https://togithub.com/tokio-rs/tokio/issues/4611))

Configuration

📅 Schedule: Branch creation - "before 4am on Monday" (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.

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.



This PR has been generated by Mend Renovate. View repository job log here.