Skip to content

Releases: tokio-rs/tokio

Tokio v1.32.1

19 Dec 17:56
c4f0178
Compare
Choose a tag to compare

1.32.1 (December 19, 2023)

This is a forward part of a change that was backported to 1.25.3.

Fixed

  • io: add budgeting to tokio::runtime::io::registration::async_io (#6221)

Tokio v1.25.3

19 Dec 17:55
0d36233
Compare
Choose a tag to compare

1.25.3 (December 17th, 2023)

Fixed

  • io: add budgeting to tokio::runtime::io::registration::async_io (#6221)

Tokio v1.35.0

08 Dec 22:36
92a3455
Compare
Choose a tag to compare

1.35.0 (December 8th, 2023)

Added

  • net: add Apple watchOS support (#6176)

Changed

  • io: drop the Sized requirements from AsyncReadExt.read_buf (#6169)
  • runtime: make Runtime unwind safe (#6189)
  • runtime: reduce the lock contention in task spawn (#6001)
  • tokio: update nix dependency to 0.27.1 (#6190)

Fixed

  • chore: make --cfg docsrs work without net feature (#6166)
  • chore: use relaxed load for unsync_load on miri (#6179)
  • runtime: handle missing context on wake (#6148)
  • taskdump: fix taskdump cargo config example (#6150)
  • taskdump: skip notified tasks during taskdumps (#6194)
  • tracing: avoid creating resource spans with current parent, use a None parent instead (#6107)
  • tracing: make task span explicit root (#6158)

Documented

  • io: flush in AsyncWriteExt examples (#6149)
  • runtime: document fairness guarantees and current behavior (#6145)
  • task: document cancel safety of LocalSet::run_until (#6147)

Tokio v1.34.0

09 Nov 19:26
49eb26f
Compare
Choose a tag to compare

Fixed

  • io: allow clear_readiness after io driver shutdown (#6067)
  • io: fix integer overflow in take (#6080)
  • io: fix I/O resource hang (#6134)
  • sync: fix broadcast::channel link (#6100)

Changed

  • macros: use ::core qualified imports instead of ::std inside tokio::test macro (#5973)

Added

  • fs: update cfg attr in fs::read_dir to include aix (#6075)
  • sync: add mpsc::Receiver::recv_many (#6010)
  • tokio: added vita target support (#6094)

Tokio v1.33.0

09 Oct 09:56
0457690
Compare
Choose a tag to compare

1.33.0 (October 9, 2023)

Fixed

  • io: mark Interest::add with #[must_use] (#6037)
  • runtime: fix cache line size for RISC-V (#5994)
  • sync: prevent lock poisoning in watch::Receiver::wait_for (#6021)
  • task: fix spawn_local source location (#5984)

Changed

  • sync: use Acquire/Release orderings instead of SeqCst in watch (#6018)

Added

  • fs: add vectored writes to tokio::fs::File (#5958)
  • io: add Interest::remove method (#5906)
  • io: add vectored writes to DuplexStream (#5985)
  • net: add Apple tvOS support (#6045)
  • sync: add ?Sized bound to {MutexGuard,OwnedMutexGuard}::map (#5997)
  • sync: add watch::Receiver::mark_unseen (#5962, #6014, #6017)
  • sync: add watch::Sender::new (#5998)
  • sync: add const fn OnceCell::from_value (#5903)

Removed

  • remove unused stats feature (#5952)

Documented

  • add missing backticks in code examples (#5938, #6056)
  • fix typos (#5988, #6030)
  • process: document that Child::wait is cancel safe (#5977)
  • sync: add examples for Semaphore (#5939, #5956, #5978, #6031, #6032, #6050)
  • sync: document that broadcast capacity is a lower bound (#6042)
  • sync: document that const_new is not instrumented (#6002)
  • sync: improve cancel-safety documentation for mpsc::Sender::send (#5947)
  • sync: improve docs for watch channel (#5954)
  • taskdump: render taskdump documentation on docs.rs (#5972)

Unstable

  • taskdump: fix potential deadlock (#6036)

Tokio v1.25.2

22 Sep 18:15
Compare
Choose a tag to compare

1.25.2 (September 22, 2023)

Forward ports 1.20.6 changes.

Changed

  • io: use memchr from libc (#5960)

Tokio v1.20.6

22 Sep 18:14
Compare
Choose a tag to compare

1.20.6 (September 22, 2023)

This is a backport of a change from 1.27.0.

Changed

  • io: use memchr from libc (#5960)

Tokio v1.32.0

16 Aug 21:16
a7d52c2
Compare
Choose a tag to compare

Fixed

  • sync: fix potential quadratic behavior in broadcast::Receiver (#5925)

Added

  • process: stabilize Command::raw_arg (#5930)
  • io: enable awaiting error readiness (#5781)

Unstable

  • rt(alt): improve the scalability of alt runtime as the number of cores grows (#5935)

Tokio v1.31.0

12 Aug 16:40
8b8005e
Compare
Choose a tag to compare

Fixed

  • io: delegate WriteHalf::poll_write_vectored (#5914)

Unstable

  • rt(unstable): fix memory leak in unstable next-gen scheduler prototype (#5911)
  • rt: expose mean task poll time metric (#5927)

Tokio v1.30.0

09 Aug 15:38
4c220af
Compare
Choose a tag to compare

1.30.0 (August 9, 2023)

This release bumps the MSRV of Tokio to 1.63. (#5887)

Changed

  • tokio: reduce LLVM code generation (#5859)
  • io: support --cfg mio_unsupported_force_poll_poll flag (#5881)
  • sync: make const_new methods always available (#5885)
  • sync: avoid false sharing in mpsc channel (#5829)
  • rt: pop at least one task from inject queue (#5908)

Added

  • sync: add broadcast::Sender::new (#5824)
  • net: implement UCred for espidf (#5868)
  • fs: add File::options() (#5869)
  • time: implement extra reset variants for Interval (#5878)
  • process: add {ChildStd*}::into_owned_{fd, handle} (#5899)

Removed

  • tokio: removed unused tokio_* cfgs (#5890)
  • remove build script to speed up compilation (#5887)

Documented

  • sync: mention lagging in docs for broadcast::send (#5820)
  • runtime: expand on sharing runtime docs (#5858)
  • io: use vec in example for AsyncReadExt::read_exact (#5863)
  • time: mark Sleep as !Unpin in docs (#5916)
  • process: fix raw_arg not showing up in docs (#5865)

Unstable

  • rt: add runtime ID (#5864)
  • rt: initial implementation of new threaded runtime (#5823)