$ the-wire · showcase
Dropping an empty BTreeMap is free again, and SyncView stabilizes
By RepoJournal · Filed · About Rust · Composed from the cited sources · methodology
A compiler rollup lands the SyncView stabilization and a BTreeMap fix that returns the empty-drop path to zero cost, while Miri rebuilds its TCP socket shim on socket2.
Rollup merge of #161791 - jakedrew:fix/Making_and_dropping_an_empty_BTreeMap_is_not_free_161375, r=clarfonthey rust-lang/rust
Dropping an empty BTreeMap walked the dying_next path and so was not free since 1.56.0; with no root we now take the free path instead. If you allocate and drop empty maps in hot loops, that cost disappears.
Stabilize SyncView rust-lang/rust
SyncView is stabilized, closing the tracking issue open since #98407. It arrives as part of the six-PR rollup that also documents current_exe's platform behavior, including Linux appending " (deleted)", and allows elided 'static lifetimes in thread_local!.
Extend TCP socket shim to use `socket2` abstractions rust-lang/miri
The TCP socket shim now uses socket2's Socket and SockRef, which drops the SocketState::Bound state and lets socket options be set before connect or listen is ever called. Non-blocking operations no longer have to follow the standard library's socket -> bind -> connect ordering under Miri.
Update Rust crate utoipa to v6 rust-lang/crates.io
crates.io is moving utoipa from 5.5.0 to 6.0.0, a major bump in the OpenAPI codegen dependency.
Update aws-sdk-rust monorepo rust-lang/crates.io
Renovate also queued routine bumps: thiserror to 2.0.21 for generic unit variant parsing, and aws-sdk-cloudfront to 1.133.0 and aws-sdk-sqs to 1.112.0.