The Wire · Showcase
CRATES.IO SHRINKS 21% WITH BINARY CONSOLIDATION
By RepoJournal · Filed · About Rust
The Rust package registry just merged four backend binaries into a single executable, cutting its Heroku slug size from 116.3 MB down to 92.1 MB in one move.
The merge collapses `server`, `background-worker`, `monitor`, and administrative commands into one `crates-io` binary [1], a structural win that eliminates redundancy without breaking existing scheduled jobs. Turbo87 included temporary shims [2] so operators can migrate cleanly without touching deployed infrastructure. On the formatting front, rustfmt shipped two critical fixes: a vertical function parameter layout fix that preserves trailing commas [3], and a macro-aware patch that stops the field init shorthand from breaking valid macro invocations [4]. The shorthand guard now checks `!context.inside_macro()`, preventing rustfmt from turning working code like `seq!(PrimitiveTask { name, preconditions })` back into syntax that won't compile. Across the ecosystem, crates.io index saw routine updates to substrait-prost, cargo-lsp, and STUN protocol libraries [ref:1,2,3], while renovate dependencies climbed to mise 2026.7.18 and Storybook 10.5.5 [ref:12,13]. Bors gained better queue visibility with expected time display for pending PRs [10], helping maintainers forecast merge windows.
One email a day. Unsubscribe in one click.
Keep up with Rust in about 3 minutes a day: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
One email a day. Unsubscribe in one click. Read a past issue →
Action items
- → Review ops guide updates for crates-io binary consolidation rust-lang/crates.io [plan]
- → Update your rustfmt config if using field_init_shorthand in macro contexts rust-lang/rustfmt [monitor]
- → Enable merge queue on your repo workflows per rustfmt's pattern rust-lang/rustfmt [monitor]
References
- [1] Merge backend binaries into a single `crates-io` binary ↗ rust-lang/crates.io
- [2] Add backend binary compatibility shims rust-lang/crates.io
- [3] Include trailing comma in single param vertical fn ↗ rust-lang/rustfmt
- [4] fix: don't apply field init shorthand inside macro calls ↗ rust-lang/rustfmt
- [5] Update crate `substrait-prost` rust-lang/crates.io-index
- [6] Update crate `cargo-lsp` rust-lang/crates.io-index
- [7] Update crate `stun-proto` rust-lang/crates.io-index
- [8] Update dependency jdx/mise to v2026.7.18 ↗ rust-lang/crates.io
- [9] Update dependency svelte-check to v4.7.4 ↗ rust-lang/crates.io
- [10] Show expected time left for pending PRs ↗ rust-lang/bors