Rust Release Notes & Changelog
rust-lang/rust
The latest Rust release is 1.99.1, published on .
Empowering everyone to build reliable and efficient software.
Rust release notes
Rust 1.99.0
Language
- Add allow-by-default
raw_borrows_via_referenceslint that checks for references that decay immediately into raw borrows - Extend
unconditional_paniclint to function calls that panic when the chunks/windows size is zero - Stabilize C-variadic function definitions
- Stabilize the ability to use
#[unsafe(naked)]functions to define C-variadic functions (#![feature(c_variadic_naked_functions)]). - Trait methods are now resolved on an adjusted never type (producing a FCW)
Rust 1.98.1
Rust 1.98.0
Language
- Allow shortening lifetime of
&mutwhen unsize-coercing, even in an invariant position. For example, you can now coerce aCell<&'long mut i32>to aCell<&'short mut dyn Send>. Such shortenings were already previously allowed when coercing a&mutto a&, or coercing a&to a&. - Add deny-by-default
invalid_runtime_symbol_definitionslint and warn-by-defaultsuspicious_runtime_symbol_definitionslint- The lints currently specifically targets
coreruntime symbols likememcmp,memset,strlen, ... and is planned to be expanded in the next few releases.
- The lints currently specifically targets
Rust 1.97.1
- rustc: Fix miscompilation in LLVM optimization This backports an LLVM submodule bump to include the LLVM-side fix and a revert of the rustc change that is one known trigger for the bug. The rustc side revert should not be strictly necessary but is done out of abundance of caution.
Rust 1.97.0
Language
- Consider
Result<T, Uninhabited>andControlFlow<Uninhabited, T>to be equivalent toTfor must use lint - Add allow-by-default
dead_code_pub_in_binarylint for unused pub items in binary crates - Stabilize the
div32,lam-bh,lamcas,ld-seq-saandscqtarget features - Stabilize
cfg(target_has_atomic_primitive_alignment) - Allow trailing
selfin imports in more cases
Platform Support
Refer to Rust's platform support page for more information on Rust's tiered platform support.
Stabilized APIs
Rust 1.96.1
Rust 1.96.0
Language
- Allow passing
exprmetavariable tocfg - Always coerce never types in tuple expressions
- Avoid incorrect inference guidance of function arguments in rare cases
- Support s390x vector registers in inline assembly
- Allow using constants of type
ManuallyDropas patterns (fixing a regression introduced in 1.94.0)
Compiler
- Enable link relaxation feature for LoongArch Linux targets
- Update
riscv64gc-unknown-fuchsiabaseline to RVA22 + vector
Libraries
Rust 1.95.0
Language
- Stabilize
if letguards on match arms irrefutable_let_patternslint no longer lints on let chains- Support importing path-segment keywords with renaming
- Stabilize inline assembly for PowerPC and PowerPC64
- const-eval: be more consistent in the behavior of padding during typed copies
- Const blocks are no longer evaluated to determine if expressions involving fallible operations can implicitly be constant-promoted.. Expressions whose ability to implicitly be promoted would depend on the result of a const block are no longer implicitly promoted.
Rust 1.94.1
- Fix
std::thread::spawnon wasm32-wasip1-threads - Remove new methods added to
std::os::windows::fs::OpenOptionsExtThe new methods were unstable, but the trait itself is not sealed and so cannot be extended with non-default methods. - Clippy: fix ICE in
match_same_arms - Cargo: update tar to 0.4.45 This resolves CVE-2026-33055 and CVE-2026-33056. Users of crates.io are not affected. See blog for more details.
Looking for an older version? The full Rust changelog is on the official rust-lang/rust releases page.
How to get notified of new Rust releases
Stay updated when Rust ships a new version. With GitWatchman, you can monitor rust-lang/rust and receive the full release notes by email, Slack, Discord or Telegram whenever a new version is published.
- Sign in with your GitHub or Google account at gitwatchman.com
- Add rust-lang/rust to your monitored repositories
- Get an alert with the release notes for every new version
You can also subscribe to the RSS feed for Rust releases (see our GitHub release RSS guide), follow Rust pre-releases and betas, or compare the best GitHub release trackers.
Related projects to track
Get notified of new Rust releases
One alert per release with the full notes, by email, Slack, Discord or Telegram. Free for up to 5 repositories.
Track Rust for free