github tokio-rs/tokio tokio-1.50.0
Tokio v1.50.0

6 hours ago

1.50.0 (Mar 3rd, 2026)

Added

  • net: add TcpStream::set_zero_linger (#7837)
  • rt: add is_rt_shutdown_err (#7771)

Changed

  • io: add optimizer hint that memchr returns in-bounds pointer (#7792)
  • io: implement vectored writes for write_buf (#7871)
  • runtime: panic when event_interval is set to 0 (#7838)
  • runtime: shorten default thread name to fit in Linux limit (#7880)
  • signal: remember the result of SetConsoleCtrlHandler (#7833)
  • signal: specialize windows Registry (#7885)

Fixed

  • io: always cleanup AsyncFd registration list on deregister (#7773)
  • macros: remove (most) local use declarations in tokio::select! (#7929)
  • net: fix GET_BUF_SIZE constant for target_os = "android" (#7889)
  • runtime: avoid redundant unpark in current_thread scheduler (#7834)
  • runtime: don't park in current_thread if before_park defers waker (#7835)
  • io: fix write readiness on ESP32 on short writes (#7872)
  • runtime: wake deferred tasks before entering block_in_place (#7879)
  • sync: drop rx waker when oneshot receiver is dropped (#7886)
  • runtime: fix double increment of num_idle_threads on shutdown (#7910, #7918, #7922)

Unstable

  • fs: check for io-uring opcode support (#7815)
  • runtime: avoid lock acquisition after uring init (#7850)

Documented

  • docs: update outdated unstable features section (#7839)
  • io: clarify the behavior of AsyncWriteExt::shutdown() (#7908)
  • io: explain how to flush stdout/stderr (#7904)
  • io: fix incorrect and confusing AsyncWrite documentation (#7875)
  • rt: clarify the documentation of Runtime::spawn (#7803)
  • rt: fix missing quotation in docs (#7925)
  • runtime: correct the default thread name in docs (#7896)
  • runtime: fix event_interval doc (#7932)
  • sync: clarify RwLock fairness documentation (#7919)
  • sync: clarify that recv returns None once closed and no more messages (#7920)
  • task: clarify when to use spawn_blocking vs dedicated threads (#7923)
  • task: doc that task drops before JoinHandle completion (#7825)
  • signal: guarantee that listeners never return None (#7869)
  • task: fix task module feature flags in docs (#7891)
  • task: fix two typos (#7913)
  • task: improve the docs of Builder::spawn_local (#7828)
  • time: add docs about auto-advance and when to use sleep (#7858)
  • util: fix typo in docs (#7926)

Don't miss a new tokio release

NewReleases is sending notifications on new releases.