]> git.feebdaed.xyz Git - 0xmirror/tokio.git/commitdiff
Merge 'tokio-1.43.2' into 'tokio-1.47.x' (#7503)
authorAlice Ryhl <aliceryhl@google.com>
Fri, 1 Aug 2025 10:59:58 +0000 (12:59 +0200)
committerAlice Ryhl <aliceryhl@google.com>
Fri, 1 Aug 2025 11:03:06 +0000 (13:03 +0200)
1  2 
tokio/CHANGELOG.md

index 4a5c151a767a7335568c8f3daa1943fb6df149b2,f790e989bfab9b578707e0f3ef16f2c0035487a7..f4b3f352e3850ee2e3b9d21a42874bee34876620
 +# 1.47.0 (July 25th, 2025)
 +
 +This release adds `poll_proceed` and `cooperative` to the `coop` module for
 +cooperative scheduling, adds `SetOnce` to the `sync` module which provides
 +similar functionality to [`std::sync::OnceLock], and adds a new method
 +`sync::Notify::notified_owned()` which returns an `OwnedNotified` without
 +a lifetime parameter.
 +
 +## Added
 +
 +- coop: add `cooperative` and `poll_proceed` ([#7405])
 +- sync: add `SetOnce` ([#7418])
 +- sync: add `sync::Notify::notified_owned()` ([#7465])
 +
 +## Changed
 +
 +- deps: upgrade windows-sys 0.52 → 0.59 ([#7117])
 +- deps: update to socket2 v0.6 ([#7443])
 +- sync: improve `AtomicWaker::wake` performance ([#7450])
 +
 +## Documented
 +
 +- metrics: fix listed feature requirements for some metrics ([#7449])
 +- runtime: improve safety comments of `Readiness<'_>` ([#7415])
 +
 +[#7405]: https://github.com/tokio-rs/tokio/pull/7405
 +[#7415]: https://github.com/tokio-rs/tokio/pull/7415
 +[#7418]: https://github.com/tokio-rs/tokio/pull/7418
 +[#7449]: https://github.com/tokio-rs/tokio/pull/7449
 +[#7450]: https://github.com/tokio-rs/tokio/pull/7450
 +[#7465]: https://github.com/tokio-rs/tokio/pull/7465
 +
 +# 1.46.1 (July 4th, 2025)
 +
 +This release fixes incorrect spawn locations in runtime task hooks for tasks
 +spawned using `tokio::spawn` rather than `Runtime::spawn`. This issue only
 +effected the spawn location in `TaskMeta::spawned_at`, and did not effect task
 +locations in Tracing events.
 +
 +## Unstable
 +
 +- runtime: add `TaskMeta::spawn_location` tracking where a task was spawned
 +  ([#7440])
 +
 +[#7440]: https://github.com/tokio-rs/tokio/pull/7440
 +
 +# 1.46.0 (July 2nd, 2025)
 +
 +## Fixed
 +
 +- net: fixed `TcpStream::shutdown` incorrectly returning an error on macOS ([#7290])
 +
 +## Added
 +
 +- sync: `mpsc::OwnedPermit::{same_channel, same_channel_as_sender}` methods ([#7389])
 +- macros: `biased` option for `join!` and `try_join!`, similar to `select!` ([#7307])
 +- net: support for cygwin ([#7393])
 +- net: support `pipe::OpenOptions::read_write` on Android ([#7426])
 +- net: add `Clone` implementation for `net::unix::SocketAddr` ([#7422])
 +
 +## Changed
 +
 +- runtime: eliminate unnecessary lfence while operating on `queue::Local<T>` ([#7340])
 +- task: disallow blocking in `LocalSet::{poll,drop}` ([#7372])
 +
 +## Unstable
 +
 +- runtime: add `TaskMeta::spawn_location` tracking where a task was spawned ([#7417])
 +- runtime: removed borrow from `LocalOptions` parameter to `runtime::Builder::build_local` ([#7346])
 +
 +## Documented
 +
 +- io: clarify behavior of seeking when `start_seek` is not used ([#7366])
 +- io: document cancellation safety of `AsyncWriteExt::flush` ([#7364])
 +- net: fix docs for `recv_buffer_size` method ([#7336])
 +- net: fix broken link of `RawFd` in `TcpSocket` docs ([#7416])
 +- net: update `AsRawFd` doc link to current Rust stdlib location ([#7429])
 +- readme: fix double period in reactor description ([#7363])
 +- runtime: add doc note that `on_*_task_poll` is unstable ([#7311])
 +- sync: update broadcast docs on allocation failure ([#7352])
 +- time: add a missing panic scenario of `time::advance` ([#7394])
 +
 +[#7290]: https://github.com/tokio-rs/tokio/pull/7290
 +[#7307]: https://github.com/tokio-rs/tokio/pull/7307
 +[#7311]: https://github.com/tokio-rs/tokio/pull/7311
 +[#7336]: https://github.com/tokio-rs/tokio/pull/7336
 +[#7340]: https://github.com/tokio-rs/tokio/pull/7340
 +[#7346]: https://github.com/tokio-rs/tokio/pull/7346
 +[#7352]: https://github.com/tokio-rs/tokio/pull/7352
 +[#7363]: https://github.com/tokio-rs/tokio/pull/7363
 +[#7364]: https://github.com/tokio-rs/tokio/pull/7364
 +[#7366]: https://github.com/tokio-rs/tokio/pull/7366
 +[#7372]: https://github.com/tokio-rs/tokio/pull/7372
 +[#7389]: https://github.com/tokio-rs/tokio/pull/7389
 +[#7393]: https://github.com/tokio-rs/tokio/pull/7393
 +[#7394]: https://github.com/tokio-rs/tokio/pull/7394
 +[#7416]: https://github.com/tokio-rs/tokio/pull/7416
 +[#7422]: https://github.com/tokio-rs/tokio/pull/7422
 +[#7426]: https://github.com/tokio-rs/tokio/pull/7426
 +[#7429]: https://github.com/tokio-rs/tokio/pull/7429
 +[#7417]: https://github.com/tokio-rs/tokio/pull/7417
 +
 +# 1.45.1 (May 24th, 2025)
 +
 +This fixes a regression on the wasm32-unknown-unknown target, where code that
 +previously did not panic due to calls to `Instant::now()` started failing. This
 +is due to the stabilization of the first time-based metric.
 +
 +### Fixed
 +
 +- Disable time-based metrics on wasm32-unknown-unknown ([#7322])
 +
 +[#7322]: https://github.com/tokio-rs/tokio/pull/7322
 +
 +# 1.45.0 (May 5th, 2025)
 +
 +### Added
 +
 +- metrics: stabilize `worker_total_busy_duration`, `worker_park_count`, and
 +  `worker_unpark_count` ([#6899], [#7276])
 +- process: add `Command::spawn_with` ([#7249])
 +
 +### Changed
 +
 +- io: do not require `Unpin` for some trait impls ([#7204])
 +- rt: mark `runtime::Handle` as unwind safe ([#7230])
 +- time: revert internal sharding implementation ([#7226])
 +
 +### Unstable
 +
 +- rt: remove alt multi-threaded runtime ([#7275])
 +
 +[#6899]: https://github.com/tokio-rs/tokio/pull/6899
 +[#7276]: https://github.com/tokio-rs/tokio/pull/7276
 +[#7249]: https://github.com/tokio-rs/tokio/pull/7249
 +[#7204]: https://github.com/tokio-rs/tokio/pull/7204
 +[#7230]: https://github.com/tokio-rs/tokio/pull/7230
 +[#7226]: https://github.com/tokio-rs/tokio/pull/7226
 +[#7275]: https://github.com/tokio-rs/tokio/pull/7275
 +
 +
 +# 1.44.2 (April 5th, 2025)
 +
 +This release fixes a soundness issue in the broadcast channel. The channel
 +accepts values that are `Send` but `!Sync`. Previously, the channel called
 +`clone()` on these values without synchronizing. This release fixes the channel
 +by synchronizing calls to `.clone()` (Thanks Austin Bonander for finding and
 +reporting the issue).
 +
 +### Fixed
 +
 +- sync: synchronize `clone()` call in broadcast channel ([#7232])
 +
 +[#7232]: https://github.com/tokio-rs/tokio/pull/7232
 +
 +# 1.44.1 (March 13th, 2025)
 +
 +### Fixed
 +
 +- rt: skip defer queue in `block_in_place` context ([#7216])
 +
 +[#7216]: https://github.com/tokio-rs/tokio/pull/7216
 +
 +# 1.44.0 (March 7th, 2025)
 +
 +This release changes the `from_std` method on sockets to panic if a blocking
 +socket is provided. We determined this change is not a breaking change as Tokio is not
 +intended to operate using blocking sockets. Doing so results in runtime hangs and
 +should be considered a bug. Accidentally passing a blocking socket to Tokio is one
 +of the most common user mistakes. If this change causes an issue for you, please
 +comment on [#7172].
 +
 +### Added
 +
 + - coop: add `task::coop` module ([#7116])
 + - process: add `Command::get_kill_on_drop()` ([#7086])
 + - sync: add `broadcast::Sender::closed` ([#6685], [#7090])
 + - sync: add `broadcast::WeakSender` ([#7100])
 + - sync: add `oneshot::Receiver::is_empty()` ([#7153])
 + - sync: add `oneshot::Receiver::is_terminated()` ([#7152])
 +
 +### Fixed
 +
 + - fs: empty reads on `File` should not start a background read ([#7139])
 + - process: calling `start_kill` on exited child should not fail ([#7160])
 + - signal: fix `CTRL_CLOSE`, `CTRL_LOGOFF`, `CTRL_SHUTDOWN` on windows ([#7122])
 + - sync: properly handle panic during mpsc drop ([#7094])
 +
 +### Changes
 +
 + - runtime: clean up magic number in registration set ([#7112])
 + - coop: make coop yield using waker defer strategy ([#7185])
 + - macros: make `select!` budget-aware ([#7164])
 + - net: panic when passing a blocking socket to `from_std` ([#7166])
 + - io: clean up buffer casts ([#7142])
 +
 +### Changes to unstable APIs
 +
 + - rt: add before and after task poll callbacks ([#7120])
 + - tracing: make the task tracing API unstable public ([#6972])
 +
 +### Documented
 +
 + - docs: fix nesting of sections in top-level docs ([#7159])
 + - fs: rename symlink and hardlink parameter names ([#7143])
 + - io: swap reader/writer in simplex doc test ([#7176])
 + - macros: docs about `select!` alternatives ([#7110])
 + - net: rename the argument for `send_to` ([#7146])
 + - process: add example for reading `Child` stdout ([#7141])
 + - process: clarify `Child::kill` behavior ([#7162])
 + - process: fix grammar of the `ChildStdin` struct doc comment ([#7192])
 + - runtime: consistently use `worker_threads` instead of `core_threads` ([#7186])
 +
 +[#6685]: https://github.com/tokio-rs/tokio/pull/6685
 +[#6972]: https://github.com/tokio-rs/tokio/pull/6972
 +[#7086]: https://github.com/tokio-rs/tokio/pull/7086
 +[#7090]: https://github.com/tokio-rs/tokio/pull/7090
 +[#7094]: https://github.com/tokio-rs/tokio/pull/7094
 +[#7100]: https://github.com/tokio-rs/tokio/pull/7100
 +[#7110]: https://github.com/tokio-rs/tokio/pull/7110
 +[#7112]: https://github.com/tokio-rs/tokio/pull/7112
 +[#7116]: https://github.com/tokio-rs/tokio/pull/7116
 +[#7120]: https://github.com/tokio-rs/tokio/pull/7120
 +[#7122]: https://github.com/tokio-rs/tokio/pull/7122
 +[#7139]: https://github.com/tokio-rs/tokio/pull/7139
 +[#7141]: https://github.com/tokio-rs/tokio/pull/7141
 +[#7142]: https://github.com/tokio-rs/tokio/pull/7142
 +[#7143]: https://github.com/tokio-rs/tokio/pull/7143
 +[#7146]: https://github.com/tokio-rs/tokio/pull/7146
 +[#7152]: https://github.com/tokio-rs/tokio/pull/7152
 +[#7153]: https://github.com/tokio-rs/tokio/pull/7153
 +[#7159]: https://github.com/tokio-rs/tokio/pull/7159
 +[#7160]: https://github.com/tokio-rs/tokio/pull/7160
 +[#7162]: https://github.com/tokio-rs/tokio/pull/7162
 +[#7164]: https://github.com/tokio-rs/tokio/pull/7164
 +[#7166]: https://github.com/tokio-rs/tokio/pull/7166
 +[#7172]: https://github.com/tokio-rs/tokio/pull/7172
 +[#7176]: https://github.com/tokio-rs/tokio/pull/7176
 +[#7185]: https://github.com/tokio-rs/tokio/pull/7185
 +[#7186]: https://github.com/tokio-rs/tokio/pull/7186
 +[#7192]: https://github.com/tokio-rs/tokio/pull/7192
 +
+ # 1.43.2 (August 1st, 2025)
+ ### Fixed
+ - process: fix panic from spurious pidfd wakeup ([#7494])
+ [#7494]: https://github.com/tokio-rs/tokio/pull/7494
  # 1.43.1 (April 5th, 2025)
  
  This release fixes a soundness issue in the broadcast channel. The channel