112 wires and counting

$ follow Rust

Keep up with Rust in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.

or

fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.

Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.

$ status

wire 2026-07-18
stories 82

© 2026 RepoJournal Home Showcase Explore How it works Privacy

$ the-wire · showcase

MIRI OVERHAULS EPOLL STATE TRACKING, FUTURES-RS PATCHES SOUNDNESS BUG

By RepoJournal · Filed · About Rust · Composed from the cited sources · methodology

Miri's readiness watcher table got replaced with per-FD state tracking, catching undefined behavior that futures-rs shipped with and forcing an emergency fix.

Miri's epoll implementation just got a major refactor [1]. The new per-FD state tracking reduces GC pressure, cleans up resources immediately on drop, and introduces proper vector clock tracking for readiness notifications across threads. The commits also fix Illumos semantics for closed file descriptors and correct the logic for fcntl(F_DUPFD), though Illumos behavior remains untested on real hardware [2]. This work uncovered a soundness bug that was already in the wild: futures-rs's compat01as03 layer contained undefined behavior in NotifyWaker's drop_raw implementation [3]. Miri flagged it trying to retag memory with incorrect permissions. The fix wraps the problematic code in UnsafeCell to match the documented API contract [4]. On the infrastructure side, the Rust team enabled merge queue deployments for the blog [5][6] and created a maintainers-in-residence marker team [7] ahead of future appointments. compiler-builtins renamed float traits and overhauled test iteration counting to support unlimited test runs [8][9][10]. Five arcbox-virtio crates shipped routine index updates across the fs, console, block, balloon, and core modules [11][12][13][14][15].

Action items

References

  1. [1] replace global readiness watcher table by per-FD state ↗ rust-lang/miri
  2. [2] clean up epoll interest lists immediately when FD gets dropped ↗ rust-lang/miri
  3. [3] Fix unsound compat01as03 implementation (fixes #2514) ↗ rust-lang/futures-rs
  4. [4] Fix unsound compat01as03 implementation (fixes #2514) (#3012) ↗ rust-lang/futures-rs
  5. [5] Allow deploying the blog from the merge queue ↗ rust-lang/team
  6. [6] Enable merge queue for the blog repository ↗ rust-lang/team
  7. [7] Create `maintainers-in-residence` marker team ↗ rust-lang/team
  8. [8] Rename float traits, improvements for extensive tests ↗ rust-lang/compiler-builtins
  9. [9] test: Rename `iteration_count` to `arg_max_iterations` ↗ rust-lang/compiler-builtins
  10. [10] test: Allow specifying LIBM_EXTENSIVE_ITERATIONS as u64::MAX ↗ rust-lang/compiler-builtins
  11. [11] Update crate `arcbox-virtio-fs` rust-lang/crates.io-index ↗
  12. [12] Update crate `arcbox-virtio-console` rust-lang/crates.io-index ↗
  13. [13] Update crate `arcbox-virtio-blk` rust-lang/crates.io-index ↗
  14. [14] Update crate `arcbox-virtio-balloon` rust-lang/crates.io-index ↗
  15. [15] Update crate `arcbox-virtio-core` rust-lang/crates.io-index ↗

Quick answers

What shipped in Rust on July 18, 2026?
Miri's readiness watcher table got replaced with per-FD state tracking, catching undefined behavior that futures-rs shipped with and forcing an emergency fix. In total, 74 commits and 8 pull requests landed.
Who contributed to Rust on July 18, 2026?
7 developers shipped this update, including bors, RalfJung, WhySoBad, Kobzol, 许杰友 Jieyou Xu (Joe), tgross35, and stbuehler.
What were the notable Rust updates?
replace global readiness watcher table by per-FD state, clean up epoll interest lists immediately when FD gets dropped, and Fix unsound compat01as03 implementation (fixes #2514).