diff --git a/README.md b/README.md index 25d7e43aa64..9ea06e576dc 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ Make sure you enable the full features of the tokio crate on Cargo.toml: ```toml [dependencies] -tokio = { version = "1.49.0", features = ["full"] } +tokio = { version = "1.50.0", features = ["full"] } ``` Then, on your main.rs: diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index c4bb2a4d8a0..42076a75fde 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -1,3 +1,97 @@ +# 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]) + +[#7771]: https://github.com/tokio-rs/tokio/pull/7771 +[#7773]: https://github.com/tokio-rs/tokio/pull/7773 +[#7792]: https://github.com/tokio-rs/tokio/pull/7792 +[#7803]: https://github.com/tokio-rs/tokio/pull/7803 +[#7815]: https://github.com/tokio-rs/tokio/pull/7815 +[#7825]: https://github.com/tokio-rs/tokio/pull/7825 +[#7828]: https://github.com/tokio-rs/tokio/pull/7828 +[#7833]: https://github.com/tokio-rs/tokio/pull/7833 +[#7834]: https://github.com/tokio-rs/tokio/pull/7834 +[#7835]: https://github.com/tokio-rs/tokio/pull/7835 +[#7837]: https://github.com/tokio-rs/tokio/pull/7837 +[#7838]: https://github.com/tokio-rs/tokio/pull/7838 +[#7839]: https://github.com/tokio-rs/tokio/pull/7839 +[#7850]: https://github.com/tokio-rs/tokio/pull/7850 +[#7858]: https://github.com/tokio-rs/tokio/pull/7858 +[#7869]: https://github.com/tokio-rs/tokio/pull/7869 +[#7871]: https://github.com/tokio-rs/tokio/pull/7871 +[#7872]: https://github.com/tokio-rs/tokio/pull/7872 +[#7875]: https://github.com/tokio-rs/tokio/pull/7875 +[#7879]: https://github.com/tokio-rs/tokio/pull/7879 +[#7880]: https://github.com/tokio-rs/tokio/pull/7880 +[#7885]: https://github.com/tokio-rs/tokio/pull/7885 +[#7886]: https://github.com/tokio-rs/tokio/pull/7886 +[#7889]: https://github.com/tokio-rs/tokio/pull/7889 +[#7891]: https://github.com/tokio-rs/tokio/pull/7891 +[#7896]: https://github.com/tokio-rs/tokio/pull/7896 +[#7904]: https://github.com/tokio-rs/tokio/pull/7904 +[#7908]: https://github.com/tokio-rs/tokio/pull/7908 +[#7910]: https://github.com/tokio-rs/tokio/pull/7910 +[#7913]: https://github.com/tokio-rs/tokio/pull/7913 +[#7918]: https://github.com/tokio-rs/tokio/pull/7918 +[#7919]: https://github.com/tokio-rs/tokio/pull/7919 +[#7920]: https://github.com/tokio-rs/tokio/pull/7920 +[#7922]: https://github.com/tokio-rs/tokio/pull/7922 +[#7923]: https://github.com/tokio-rs/tokio/pull/7923 +[#7925]: https://github.com/tokio-rs/tokio/pull/7925 +[#7926]: https://github.com/tokio-rs/tokio/pull/7926 +[#7929]: https://github.com/tokio-rs/tokio/pull/7929 +[#7932]: https://github.com/tokio-rs/tokio/pull/7932 + # 1.49.0 (January 3rd, 2026) ### Added diff --git a/tokio/Cargo.toml b/tokio/Cargo.toml index 8cc187421e2..debfc0a047d 100644 --- a/tokio/Cargo.toml +++ b/tokio/Cargo.toml @@ -6,7 +6,7 @@ name = "tokio" # - README.md # - Update CHANGELOG.md. # - Create "v1.x.y" git tag. -version = "1.49.0" +version = "1.50.0" edition = "2021" rust-version = "1.71" authors = ["Tokio Contributors "] @@ -90,7 +90,7 @@ io-uring = ["dep:io-uring", "libc", "mio/os-poll", "mio/os-ext", "dep:slab"] taskdump = ["dep:backtrace"] [dependencies] -tokio-macros = { version = "~2.6.0", path = "../tokio-macros", optional = true } +tokio-macros = { version = "~2.6.0", optional = true } pin-project-lite = "0.2.11" diff --git a/tokio/README.md b/tokio/README.md index 25d7e43aa64..9ea06e576dc 100644 --- a/tokio/README.md +++ b/tokio/README.md @@ -56,7 +56,7 @@ Make sure you enable the full features of the tokio crate on Cargo.toml: ```toml [dependencies] -tokio = { version = "1.49.0", features = ["full"] } +tokio = { version = "1.50.0", features = ["full"] } ``` Then, on your main.rs: