From b1a3040d202df63e6cbe43bd84bf2dd8df420780 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Thu, 1 Sep 2022 23:31:43 +0200 Subject: [PATCH 1/5] chore: prepare Tokio v1.21.0 --- README.md | 2 +- tokio/CHANGELOG.md | 95 ++++++++++++++++++++++++++++++++++++++++++++++ tokio/Cargo.toml | 2 +- tokio/README.md | 2 +- 4 files changed, 98 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 92e4779a65a..8205299132c 100644 --- a/README.md +++ b/README.md @@ -56,7 +56,7 @@ Make sure you activated the full features of the tokio crate on Cargo.toml: ```toml [dependencies] -tokio = { version = "1.20.1", features = ["full"] } +tokio = { version = "1.21.0", features = ["full"] } ``` Then, on your main.rs: diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index 3758fc44f32..d2ba992dd2f 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -1,3 +1,98 @@ +# 1.21.0 (September 1, 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]) +- rt: add unstable option to disable the LIFO slot ([#4936]) +- 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]) +- 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]) +- sync: simplify broadcast channel implementation ([#4867]) + +### 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 + +- task: fix incorrect signature in `Builder::spawn_on` ([#4953]) +- task: make `task::Builder::spawn*` methods fallible ([#4823]) + +[#4595]: https://github.com/tokio-rs/tokio/pull/4595 +[#4716]: https://github.com/tokio-rs/tokio/pull/4716 +[#4765]: https://github.com/tokio-rs/tokio/pull/4765 +[#4805]: https://github.com/tokio-rs/tokio/pull/4805 +[#4811]: https://github.com/tokio-rs/tokio/pull/4811 +[#4823]: https://github.com/tokio-rs/tokio/pull/4823 +[#4824]: https://github.com/tokio-rs/tokio/pull/4824 +[#4837]: https://github.com/tokio-rs/tokio/pull/4837 +[#4840]: https://github.com/tokio-rs/tokio/pull/4840 +[#4841]: https://github.com/tokio-rs/tokio/pull/4841 +[#4845]: https://github.com/tokio-rs/tokio/pull/4845 +[#4848]: https://github.com/tokio-rs/tokio/pull/4848 +[#4849]: https://github.com/tokio-rs/tokio/pull/4849 +[#4852]: https://github.com/tokio-rs/tokio/pull/4852 +[#4858]: https://github.com/tokio-rs/tokio/pull/4858 +[#4867]: https://github.com/tokio-rs/tokio/pull/4867 +[#4877]: https://github.com/tokio-rs/tokio/pull/4877 +[#4882]: https://github.com/tokio-rs/tokio/pull/4882 +[#4886]: https://github.com/tokio-rs/tokio/pull/4886 +[#4893]: https://github.com/tokio-rs/tokio/pull/4893 +[#4894]: https://github.com/tokio-rs/tokio/pull/4894 +[#4897]: https://github.com/tokio-rs/tokio/pull/4897 +[#4898]: https://github.com/tokio-rs/tokio/pull/4898 +[#4901]: https://github.com/tokio-rs/tokio/pull/4901 +[#4904]: https://github.com/tokio-rs/tokio/pull/4904 +[#4920]: https://github.com/tokio-rs/tokio/pull/4920 +[#4924]: https://github.com/tokio-rs/tokio/pull/4924 +[#4928]: https://github.com/tokio-rs/tokio/pull/4928 +[#4935]: https://github.com/tokio-rs/tokio/pull/4935 +[#4936]: https://github.com/tokio-rs/tokio/pull/4936 +[#4937]: https://github.com/tokio-rs/tokio/pull/4937 +[#4942]: https://github.com/tokio-rs/tokio/pull/4942 +[#4945]: https://github.com/tokio-rs/tokio/pull/4945 +[#4951]: https://github.com/tokio-rs/tokio/pull/4951 +[#4953]: https://github.com/tokio-rs/tokio/pull/4953 +[#4956]: https://github.com/tokio-rs/tokio/pull/4956 +[#4959]: https://github.com/tokio-rs/tokio/pull/4959 + # 1.20.1 (July 25, 2022) ### Fixed diff --git a/tokio/Cargo.toml b/tokio/Cargo.toml index 9295987a32e..b10b84ce831 100644 --- a/tokio/Cargo.toml +++ b/tokio/Cargo.toml @@ -6,7 +6,7 @@ name = "tokio" # - README.md # - Update CHANGELOG.md. # - Create "v1.0.x" git tag. -version = "1.20.1" +version = "1.21.0" edition = "2018" rust-version = "1.49" authors = ["Tokio Contributors "] diff --git a/tokio/README.md b/tokio/README.md index 92e4779a65a..8205299132c 100644 --- a/tokio/README.md +++ b/tokio/README.md @@ -56,7 +56,7 @@ Make sure you activated the full features of the tokio crate on Cargo.toml: ```toml [dependencies] -tokio = { version = "1.20.1", features = ["full"] } +tokio = { version = "1.21.0", features = ["full"] } ``` Then, on your main.rs: From 19c8c98d66722a1f1384f788ed0a74198ba67ecb Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Thu, 1 Sep 2022 23:44:40 +0200 Subject: [PATCH 2/5] Move 4936 to unstable section --- tokio/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index d2ba992dd2f..c2147609d36 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -9,7 +9,6 @@ wasm32-wasi target is given unstable support for the `net` feature. - 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]) -- rt: add unstable option to disable the LIFO slot ([#4936]) - signal: add more windows signal handlers ([#4924]) - sync: add `mpsc::Sender::max_capacity` method ([#4904]) - sync: implement Weak version of `mpsc::Sender` ([#4595]) @@ -52,6 +51,7 @@ wasm32-wasi target is given unstable support for the `net` feature. ### 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]) From 1f833e40d863602b30b83356a96d409a685bf6cc Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Thu, 1 Sep 2022 23:49:16 +0200 Subject: [PATCH 3/5] Move broadcast item to fixes --- tokio/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index c2147609d36..96b53c709dc 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -23,6 +23,7 @@ wasm32-wasi target is given unstable support for the `net` feature. - signal: don't register write interest on signal pipe ([#4898]) - sync: add `#[must_use]` to lock guards ([#4886]) - task: propagate attributes on task-locals ([#4837]) +- sync: fix hang when calling `recv` on closed and reopened broadcast channel ([#4867]) ### Changed @@ -36,7 +37,6 @@ wasm32-wasi target is given unstable support for the `net` feature. - rt: extract `basic_scheduler::Config` ([#4935]) - rt: move I/O driver into `runtime` module ([#4942]) - rt: rename internal scheduler types ([#4945]) -- sync: simplify broadcast channel implementation ([#4867]) ### Documented From e24cce2a6e67505700d4cb865a468139f9352fe7 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Fri, 2 Sep 2022 11:42:15 +0200 Subject: [PATCH 4/5] Update date --- tokio/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index 96b53c709dc..b010635c304 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -1,4 +1,4 @@ -# 1.21.0 (September 1, 2022) +# 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 From 63cf01511d92afc674eadeb20ea1e2682321b6d1 Mon Sep 17 00:00:00 2001 From: Alice Ryhl Date: Fri, 2 Sep 2022 11:43:25 +0200 Subject: [PATCH 5/5] Sort fixes list --- tokio/CHANGELOG.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tokio/CHANGELOG.md b/tokio/CHANGELOG.md index b010635c304..fcb4a740663 100644 --- a/tokio/CHANGELOG.md +++ b/tokio/CHANGELOG.md @@ -22,8 +22,8 @@ wasm32-wasi target is given unstable support for the `net` feature. - 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]) -- task: propagate attributes on task-locals ([#4837]) - sync: fix hang when calling `recv` on closed and reopened broadcast channel ([#4867]) +- task: propagate attributes on task-locals ([#4837]) ### Changed