Rust: Weekly Recap - Language Features & Tooling Improvements
This week brought significant language enhancements including pinned drop sugar syntax and unconstrained parameter fixes, alongside major rustdoc improvements for macro handling and comprehensive code formatting updates.
Duration: PT3M18S
Transcript
Welcome to the Rust weekly recap for May 10th through 17th, 2026.
20 PRs merged, 0 additional commits this week.
Starting with language features, PR #156452 implements pinned drop sugar, allowing developers to write `fn drop(&pin mut self)` as syntactic sugar for `Drop::pin_drop`. This enhancement simplifies working with pinned types in drop implementations. PR #148788 addresses unconstrained parameter issues, resolving long-standing problems with generic type constraints across 42 files.
Documentation and tooling saw substantial improvements. PR #152449 adds proper support for macros with multiple kinds in rustdoc, fixing how macro documentation is generated and displayed. PR #156518 applies comprehensive rustfmt updates to match expressions containing or-patterns with comments, affecting formatting across 39 files throughout the codebase.
The delegation feature received attention with PR #156565, which now emits proper errors when self types are not specified but accessed, preventing internal compiler errors. PR #156587 fixes rustdoc macro expansion to correctly handle associated items.
Infrastructure updates include PR #156393 enabling additional f16 and f128 tests in Miri, expanding floating-point testing coverage. The Miri subtree received its regular update in PR #156513. Several platform-specific improvements landed, including PR #156571 disabling `main_needs_argc_argv` for WebAssembly targets and PR #156554 allowing user-provided LLVM arguments to override target specifications.
Compiler optimizations include PR #156218, which improves DestinationPropagation performance by computing liveness as ranges rather than using traveling bitsets. PR #156586 systematically refactors drop context creation for better code organization.
Additional fixes address UTF-8 pattern validation in PR #156556, coverage testing improvements in PR #156604, and external item interface requirements for dynamic libraries in PR #156319. The cargo submodule received updates addressing frame-pointer profile options and build target configuration.
Next week, we expect continued work on language features and further tooling refinements as these changes stabilize.
That's your Rust development update for this week.