Tags: gzmorell/tokio
Tags
# 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` ([tokio-rs#4616]) - macros: fix `select` macro to process 64 branches ([tokio-rs#4519]) - net: fix `try_io` methods not calling Mio's `try_io` internally ([tokio-rs#4582]) - runtime: recover when OS fails to spawn a new thread ([tokio-rs#4485]) ### Added - macros: support setting a custom crate name for `#[tokio::main]` and `#[tokio::test]` ([tokio-rs#4613]) - net: add `UdpSocket::peer_addr` ([tokio-rs#4611]) - net: add `try_read_buf` method for named pipes ([tokio-rs#4626]) - signal: add `SignalKind` `Hash`/`Eq` impls and `c_int` conversion ([tokio-rs#4540]) - signal: add support for signals up to `SIGRTMAX` ([tokio-rs#4555]) - sync: add `watch::Sender::send_modify` method ([tokio-rs#4310]) - sync: add `broadcast::Receiver::len` method ([tokio-rs#4542]) - sync: add `watch::Receiver::same_channel` method ([tokio-rs#4581]) - sync: implement `Clone` for `RecvError` types ([tokio-rs#4560]) ### Changed - update `mio` to 0.8.1 ([tokio-rs#4582]) - macros: rename `tokio::select!`'s internal `util` module ([tokio-rs#4543]) - runtime: use `Vec::with_capacity` when building runtime ([tokio-rs#4553]) ### Documented - improve docs for `tokio_unstable` ([tokio-rs#4524]) - runtime: include more documentation for thread_pool/worker ([tokio-rs#4511]) - runtime: update `Handle::current`'s docs to mention `EnterGuard` ([tokio-rs#4567]) - time: clarify platform specific timer resolution ([tokio-rs#4474]) - signal: document that `Signal::recv` is cancel-safe ([tokio-rs#4634]) - sync: `UnboundedReceiver` close docs ([tokio-rs#4548]) ### Unstable The following changes only apply when building with `--cfg tokio_unstable`: - task: add `task::Id` type ([tokio-rs#4630]) - task: add `AbortHandle` type for cancelling tasks in a `JoinSet` ([tokio-rs#4530], [tokio-rs#4640]) - task: fix missing `doc(cfg(...))` attributes for `JoinSet` ([tokio-rs#4531]) - task: fix broken link in `AbortHandle` RustDoc ([tokio-rs#4545]) - metrics: add initial IO driver metrics ([tokio-rs#4507]) [tokio-rs#4616]: tokio-rs#4616 [tokio-rs#4519]: tokio-rs#4519 [tokio-rs#4582]: tokio-rs#4582 [tokio-rs#4485]: tokio-rs#4485 [tokio-rs#4613]: tokio-rs#4613 [tokio-rs#4611]: tokio-rs#4611 [tokio-rs#4626]: tokio-rs#4626 [tokio-rs#4540]: tokio-rs#4540 [tokio-rs#4555]: tokio-rs#4555 [tokio-rs#4310]: tokio-rs#4310 [tokio-rs#4542]: tokio-rs#4542 [tokio-rs#4581]: tokio-rs#4581 [tokio-rs#4560]: tokio-rs#4560 [tokio-rs#4631]: tokio-rs#4631 [tokio-rs#4582]: tokio-rs#4582 [tokio-rs#4543]: tokio-rs#4543 [tokio-rs#4553]: tokio-rs#4553 [tokio-rs#4524]: tokio-rs#4524 [tokio-rs#4511]: tokio-rs#4511 [tokio-rs#4567]: tokio-rs#4567 [tokio-rs#4474]: tokio-rs#4474 [tokio-rs#4634]: tokio-rs#4634 [tokio-rs#4548]: tokio-rs#4548 [tokio-rs#4630]: tokio-rs#4630 [tokio-rs#4530]: tokio-rs#4530 [tokio-rs#4640]: tokio-rs#4640 [tokio-rs#4531]: tokio-rs#4531 [tokio-rs#4545]: tokio-rs#4545 [tokio-rs#4507]: tokio-rs#4507
chore: prepare tokio-util 0.7.1 release (tokio-rs#4521)
# 1.17.0 (February 16, 2022) This release updates the minimum supported Rust version (MSRV) to 1.49, the `mio` dependency to v0.8, and the (optional) `parking_lot` dependency to v0.12. Additionally, it contains several bug fixes, as well as internal refactoring and performance improvements. ### Fixed - time: prevent panicking in `sleep` with large durations ([tokio-rs#4495]) - time: eliminate potential panics in `Instant` arithmetic on platforms where `Instant::now` is not monotonic ([tokio-rs#4461]) - io: fix `DuplexStream` not participating in cooperative yielding ([tokio-rs#4478]) - rt: fix potential double panic when dropping a `JoinHandle` ([tokio-rs#4430]) ### Changed - update minimum supported Rust version to 1.49 ([tokio-rs#4457]) - update `parking_lot` dependency to v0.12.0 ([tokio-rs#4459]) - update `mio` dependency to v0.8 ([tokio-rs#4449]) - rt: remove an unnecessary lock in the blocking pool ([tokio-rs#4436]) - rt: remove an unnecessary enum in the basic scheduler ([tokio-rs#4462]) - time: use bit manipulation instead of modulo to improve performance ([tokio-rs#4480]) - net: use `std::future::Ready` instead of our own `Ready` future ([tokio-rs#4271]) - replace deprecated `atomic::spin_loop_hint` with `hint::spin_loop` ([tokio-rs#4491]) - fix miri failures in intrusive linked lists ([tokio-rs#4397]) ### Documented - io: add an example for `tokio::process::ChildStdin` ([tokio-rs#4479]) ### Unstable The following changes only apply when building with `--cfg tokio_unstable`: - task: fix missing location information in `tracing` spans generated by `spawn_local` ([tokio-rs#4483]) - task: add `JoinSet` for managing sets of tasks ([tokio-rs#4335]) - metrics: fix compilation error on MIPS ([tokio-rs#4475]) - metrics: fix compilation error on arm32v7 ([tokio-rs#4453]) [tokio-rs#4495]: tokio-rs#4495 [tokio-rs#4461]: tokio-rs#4461 [tokio-rs#4478]: tokio-rs#4478 [tokio-rs#4430]: tokio-rs#4430 [tokio-rs#4457]: tokio-rs#4457 [tokio-rs#4459]: tokio-rs#4459 [tokio-rs#4449]: tokio-rs#4449 [tokio-rs#4462]: tokio-rs#4462 [tokio-rs#4436]: tokio-rs#4436 [tokio-rs#4480]: tokio-rs#4480 [tokio-rs#4271]: tokio-rs#4271 [tokio-rs#4491]: tokio-rs#4491 [tokio-rs#4397]: tokio-rs#4397 [tokio-rs#4479]: tokio-rs#4479 [tokio-rs#4483]: tokio-rs#4483 [tokio-rs#4335]: tokio-rs#4335 [tokio-rs#4475]: tokio-rs#4475 [tokio-rs#4453]: tokio-rs#4453
PreviousNext