tokio-1.52.3

facebookresearch/tribev2tokio-1.52.3May 8, 2026by Darksonn

AI Summary

This release focuses on critical bug fixes within the Tokio runtime's synchronization primitives, specifically addressing underflow issues in multi-producer single-consumer (mpsc) channels and improving the behavior of `OwnedPermit::release()` and `RwLock` validation.

Key Highlights

  • Fixed underflow in mpsc channel `len()`
  • Fixed `try_recv()` to return `Empty` when mpsc is closed with outstanding permits
  • Fixed `OwnedPermit::release()` to notify receivers
  • Added requirement for `RwLock` `max_readers` to be non-zero

Full Release Notes

# 1.52.3 (May 8th, 2026)

### Fixed

* sync: fix underflow in mpsc channel `len()` ([#8062])
* sync: notify receivers in mpsc `OwnedPermit::release()` method ([#8075])
* sync: require that an `RwLock` has `max_readers != 0` ([#8076])
* sync: return `Empty` from `try_recv()` when mpsc is closed with outstanding permits ([#8074])

[#8062]: https://github.com/tokio-rs/tokio/pull/8062
[#8074]: https://github.com/tokio-rs/tokio/pull/8074
[#8075]: https://github.com/tokio-rs/tokio/pull/8075
[#8076]: https://github.com/tokio-rs/tokio/pull/8076