# Rust release history and what changed since 2024

Source page: https://dev-news.anonyfox.com/rust/

Every Rust release since January 2024 from the rust-lang/rust GitHub releases, and what happened to the Rust stories dev-news covered back then.

## Where it stands (2026-10-24)

Rust 1.99.0 shipped on 1 October 2026. It is the 24th minor release since 1.76.0 in February 2024, and all 23 gaps between them were exactly 42 days. If the train keeps time, 1.100.0 arrives on 12 November.

The surprises are in the 12 point releases. The latest, 1.99.1 on 16 October, fixed a miscompilation of FFI functions returning bool on x86_64. It also fixed rust-lld on macOS, 13 months after rust-lld became the default linker on x86_64 Linux.

## Latest stable releases

- [1.99.1](https://github.com/rust-lang/rust/releases/tag/1.99.1) (2026-10-16): library: fix missing symbol wcslen on UEFI and embedded targets
- [1.99.0](https://github.com/rust-lang/rust/releases/tag/1.99.0) (2026-10-01): Add allow-by-default rawborrowsviareferences lint that checks for references that decay immediately into raw borrows
- [1.98.1](https://github.com/rust-lang/rust/releases/tag/1.98.1) (2026-09-03): rustc: fix miscompilation in generating vtables
- [1.98.0](https://github.com/rust-lang/rust/releases/tag/1.98.0) (2026-08-20): Allow shortening lifetime of &mut when unsize-coercing, even in an invariant position. For example, you can now coerce a Cell<&'long mut i32> to a…
- [1.97.1](https://github.com/rust-lang/rust/releases/tag/1.97.1) (2026-07-16): 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…
- [1.97.0](https://github.com/rust-lang/rust/releases/tag/1.97.0) (2026-07-09): Consider Result<T, Uninhabited> and ControlFlow<Uninhabited, T> to be equivalent to T for must use lint
- [1.96.1](https://github.com/rust-lang/rust/releases/tag/1.96.1) (2026-07-05): Cargo: fix timeout/retry behavior
- [1.96.0](https://github.com/rust-lang/rust/releases/tag/1.96.0) (2026-05-28): Allow passing expr metavariable to cfg
- [1.95.0](https://github.com/rust-lang/rust/releases/tag/1.95.0) (2026-04-16): Stabilize if let guards on match arms
- [1.94.1](https://github.com/rust-lang/rust/releases/tag/1.94.1) (2026-03-26): Fix std::thread::spawn on wasm32-wasip1-threads
- [1.94.0](https://github.com/rust-lang/rust/releases/tag/1.94.0) (2026-03-05): Impls and impl items inherit deadcode lint level of the corresponding traits and trait items
- [1.93.1](https://github.com/rust-lang/rust/releases/tag/1.93.1) (2026-02-12): Don't try to recover keyword as non-keyword identifier, fixing an ICE that especially affected rustfmt.
- [1.93.0](https://github.com/rust-lang/rust/releases/tag/1.93.0) (2026-01-22): Stabilize several s390x vector-related target features and the iss390xfeaturedetected! macro
- [1.92.0](https://github.com/rust-lang/rust/releases/tag/1.92.0) (2025-12-11): Document MaybeUninit representation and validity
- [1.91.1](https://github.com/rust-lang/rust/releases/tag/1.91.1) (2025-11-10): Enable file locking support in illumos. This fixes Cargo not locking the build directory on illumos.

## In the dev-news log

- **Google's Rust Style Guide** (2026-10-21). 389 points and 256 comments on Hacker News. [log](https://dev-news.anonyfox.com/log/2026-10-21/#rust-5)

## What happened to the stories we covered

### The 2024 Edition update (2024-03-22)

Original source: https://blog.rust-lang.org/inside-rust/2024/03/22/2024-edition-update.html

The 2024 Edition went stable in 1.85.0 on 20 February 2025. A month later 1.85.1 had to fix the edition's doctest merging.

let chains followed in 1.88.0 on 26 June 2025, and only for code on the 2024 edition.

### CVE-2024-24576 in std::process::Command on Windows (2024-04-09)

Original source: https://blog.rust-lang.org/2024/04/09/cve-2024-24576.html

1.77.2 shipped the fix the same day. On 4 September 2024 the project announced CVE-2024-43402: batch file arguments still were not escaped when the file name ended in whitespace or periods. 1.81.0 closed it the next day.

So the fix needed its own CVE, five months later.

### rust-lld on nightly Linux (2024-05-17)

Original source: https://blog.rust-lang.org/2024/05/17/enabling-rust-lld-on-linux.html

Stable took 16 months. 1.90.0 on 18 September 2025 made lld the default on x86_64-unknown-linux-gnu.

rust-lld still gets fixes in point releases. 1.99.1 added a missing rpath for libLLVM on macOS.

### Async closures need testing (2024-08-09)

Original source: https://blog.rust-lang.org/inside-rust/2024/08/09/async-closures-call-for-testing.html

Async closures were stabilized in 1.85.0 on 20 February 2025, in the same release as the 2024 Edition.

### wasm32-wasip2 moves to tier 2 (2024-09-05)

Original source: https://blog.rust-lang.org/2024/09/05/wasip2-tier-2.html

The promotion shipped in 1.82.0 on 17 October 2024. In 1.93.1 on 12 February 2026 a revert fixed file descriptor leaks on wasm32-wasip2.

Releases since 2024: 36 stable, 0 prereleases. JSON: https://dev-news.anonyfox.com/rust.json. Feed: https://dev-news.anonyfox.com/rust/feed.xml
