What rust-lang/rust shipped
Written by FoxPlug from the repository's own releases; not affiliated with Rust. Paste your own repository in the box below and FoxPlug writes the same weekly update for your product. This page is an automatic summary of the releases, pull requests and commits in github.com/rust-lang/rust; Rust did not write it and does not use or endorse FoxPlug. Every line links to the change it describes.
Get a weekly update like this for your product, free
Week of October 5, 2026
What shipped
- Ptr::try_cast_aligned is stabilized, giving a checked fallible version of pointer alignment casting. Pull request #154170
- The WebAssembly wide-arithmetic target feature is stabilized for WebAssembly targets. Pull request #160877
- BTreeMap::Iter::next gained a fast path that speeds up iteration over BTreeMap. Pull request #163521
- Rustc_public now exposes regular argument attributes through ArgAttributes and ArgAttributeFlags. Pull request #163242
- NonNull::{read,write}_volatile are now unstably const under the
const_volatilefeature. Pull request #164051 - Extension of bool return values on
x86_64is re-enabled, addressing an issue that caused miscompilation. Pull request #163917 - The compiler now errors on non-literal expressions in doc attributes on macro calls, which had been accidentally accepted since 1.94. Pull request #160904
- Diagnostics for return type mismatches were improved, including fixing misleading suggestions and duplicate errors. Pull request #162926
- Box now uses a (NonNull, PhantomData) wrapper instead of Unique internally, as a first step toward removing Unique. Pull request #162849
- Rustdoc now checks the reexport chain before hiding items that are inline before hidden. Pull request #164033
Why it matters
This week brings two stabilizations: pointer alignment casting and a WebAssembly arithmetic feature, both ready for use. Several library and compiler internals were cleaned up and sped up, including BTreeMap iteration, Box internals, and rustc_public attribute exposure. Diagnostics also improved, so code that returns the wrong type gets clearer error messages, and doc attributes on macro calls are now checked more strictly.
Changelog entry
- Stabilize ptr::try_cast_aligned. Pull request #154170
- Stabilize the WebAssembly wide-arithmetic target feature. Pull request #160877
- Add a fast path for BTreeMap::Iter::next. Pull request #163521
- Expose regular argument attributes in
rustc_public. Pull request #163242 - Make NonNull::{read,write}_volatile unstably const. Pull request #164051
- Re-enable extension of bool return values on
x86_64. Pull request #163917 - Error on non-literal expressions in doc attributes on macro calls. Pull request #160904
- Fix misleading diagnostics and improve diagnostics of return type mismatch. Pull request #162926
- Replace Unique in Box with a (NonNull, PhantomData) wrapper. Pull request #162849
- Rustdoc: check reexport chain if inline before hidden. Pull request #164033
- Std: remove unnecessary sysctl caching on FreeBSD. Pull request #163975
- Tests: update duplicated-path-in-error message on musl hosts. Pull request #164120
This week: ptr::try_cast_aligned and WebAssembly wide-arithmetic are stabilized, BTreeMap iteration gets a fast path, rustc_public exposes argument attributes, and better diagnostics land for return type mismatches and doc attributes on macro calls.
This week in the Rust repository: ptr::try_cast_aligned and the WebAssembly wide-arithmetic target feature are stabilized. BTreeMap::Iter::next gained a fast path, Box now uses a (NonNull, PhantomData) wrapper as part of removing Unique, and rustc_public exposes regular argument attributes. On the compiler side, diagnostics for return type mismatches were improved, non-literal expressions in doc attributes on macro calls now error, and bool return value extension on x86_64 is re-enabled. Small cleanups also landed in std, tests, and rustc internals.
Week of September 28, 2026
What shipped
- Stabilized CStr::display for displaying C strings after FCP completion. Pull request #163711
- Added unstable movdir64b and movdiri x86 target features with runtime detection support. Pull request #163742
- Added a feature-complete warning for #[
panic_handler] on unsafe functions to prevent safety precondition violations. Pull request #162974 - Refactored parser functions
should_continue_as_assoc_exprandcan_continue_expr_unambiguouslyfor better readability and documentation. Pull request #163665 - Marked Rc strong and weak count methods as
must_use, matching Arc behavior. Pull request #163503 - Removed old solver coherence implementation as part of next-solver migration. Pull request #161491
- Fixed multiple crashes identified in next-solver implementation. Pull request #163725
- Updated LLVM submodule to latest release/23.x branch including LLVM 23.1.2 and subsequent fixes. Pull request #163615
- Added documentation for
no_mainand repr attributes with usage examples. Pull request #163627 - Fixed x86 c-variadic functions to not use registers with -Zregparm flag. Pull request #163622
Why it matters
This week includes a stabilization of a commonly-used string utility, continued progress on the next-solver migration with bug fixes, and improvements to x86 calling conventions and documentation that help developers understand platform-specific behavior and attribute requirements.
Changelog entry
- Stabilized CStr::display Pull request #163711
- Added unstable x86 target features movdir64b and movdiri Pull request #163742
- Added feature-complete warning for #[
panic_handler] on unsafe functions Pull request #162974 - Refactored parser functions for improved readability Pull request #163665
- Removed old solver coherence implementation Pull request #161491
- Fixed x86 c-variadic calling convention with -Zregparm Pull request #163622
- Added documentation for
no_mainand repr attributes Pull request #163627 - Fixed crashes with next-solver Pull request #163725
- Updated LLVM submodule to 23.1.2 Pull request #163615
This week: stabilized CStr::display, added x86 movdir64b/movdiri features, fixed next-solver crashes, refactored parser code for clarity, and improved attribute documentation.
This week's Rust updates include the stabilization of CStr::display for C string formatting, addition of x86 movdir64b and movdiri target features with runtime detection, multiple next-solver crash fixes, and improvements to parser code readability. Documentation was enhanced for no_main and repr attributes, Rc methods were marked must_use, and x86 calling convention handling for c-variadic functions was corrected.
Week of September 21, 2026
What shipped
- SyncView was stabilized, closing tracking issue #98407. Pull request #163366
- Mem::conjure_zst was stabilized for creating zero-sized types at compile time. Pull request #161710
- Thread_local! macro now allows elided 'static lifetimes in initializers on all platforms. Pull request #159564
- RawWakerVTable now guarantees 8 bytes of alignment for use with AtomicPtr. Pull request #158186
- Dropping an empty BTreeMap is now free instead of walking unnecessary paths. Pull request #161791
- F16 and f128 no longer auto-inline on well-supported platforms, reducing unnecessary code bloat. Pull request #162883
- Compiletest now streams executor process output when --no-capture is set. Pull request #162714
- Documentation in core::slice was improved with comma and grammar fixes. Pull request #163325
- Rustc_hir's attribute re-exports were removed to reduce coupling. Pull request #163250
- Crate hash computation was changed to use metadata encoding instead of HIR. Pull request #154724
Why it matters
This week included stabilization of APIs that developers have been waiting for, alongside performance improvements to collections and code generation. Memory management and compile-time code generation become more efficient, while the macro system gains flexibility and standard library documentation gets refinements.
Changelog entry
- Stabilized SyncView (https://github.com/rust-lang/rust/issues/98407) Pull request #163366
- Stabilized mem::conjure_zst for zero-sized type creation (https://github.com/rust-lang/rust/issues/95383) Pull request #161710
- Allow elided 'static lifetimes in
thread_local! macro on all platforms Pull request #159564 - Guarantee 8 bytes of alignment for RawWakerVTable Pull request #158186
- Make dropping empty BTreeMap free Pull request #161791
- No longer auto-inline f16 and f128 on well-supported platforms Pull request #162883
- Compiletest: stream output of executor process when --no-capture is set Pull request #162714
- Remove
rustc_hir's attribute re-exports Pull request #163250 - Document platform-specific behavior of
current_exeincluding Linux deletion suffix Pull request #150824 - Compute
crate_hashfrom metadata encoding instead of HIR Pull request #154724
This week: SyncView stabilized, mem::conjure_zst ready for stable, thread_local! gains 'static elision, empty BTreeMap drops are now free, and f16/f128 no longer force inlining.
Rust shipped several stabilizations this week: SyncView and mem::conjure_zst are now stable, thread_local! supports elided lifetimes, and performance improvements include making empty BTreeMap drops free and stopping unnecessary f16/f128 inlining. RawWakerVTable guarantees 8-byte alignment for safer synchronization patterns.