Rust Releases
Track every Rust release. Version timelines, edition changes, and upgrade guidance for Rust developers.
—
Total Versions
—
Supported
—
Latest
Version Timeline
All tracked releases with lifecycle status and EOL dates.
Loading version data…
Lifecycle Timeline
Visual overview of active support and maintenance windows.
Upgrade Paths
Migration guidance between major versions — breaking changes, effort estimates, and tips.
Breaking Changes
- unsafe_op_in_unsafe_fn now a hard error
- Changes to temporary lifetime rules
- RPIT lifetime capture rules updated
- gen keyword reserved
- Additions to prelude (Future, IntoFuture)
Migration Notes
Run cargo fix --edition to auto-migrate most changes. The unsafe_op_in_unsafe_fn lint is the biggest behavioral shift. Test thoroughly after migration. Edition changes are opt-in per crate.
Breaking Changes
- New lints may trigger warnings
- cargo-semver-checks improvements
- Minor stdlib behavioral refinements
Migration Notes
Rust point releases are almost always backward compatible. Update rust-toolchain.toml or run rustup update. Fix any new lint warnings. The 6-week cycle means small incremental changes.
Version Risk Assessment
Evaluate risk factors before choosing a version for production.
| Version | EOL Risk | CVE Risk | Ecosystem | Cloud Support | Overall | Recommended Action |
|---|---|---|---|---|---|---|
| Rust < 1.90 | High | Medium | Outdated | N/A | High | Unsupported. Update to latest stable. |
| Rust 1.91-1.92 | Medium | Low | Recent | N/A | Medium | Recently superseded. Update soon. |
| Rust 1.93 | None | Low | Active | N/A | Low | Latest stable. Recommended. |
Rust only supports the latest stable release. Older versions get no patches. However, Rust's strong backward compatibility means upgrading is typically trivial. The main risk of staying old is missing security patches in the standard library and compiler.
Rust Edition Comparison
Side-by-side feature differences across major versions.
| Feature | Edition 2015 | Edition 2018 | Edition 2021 | Edition 2024 |
|---|---|---|---|---|
| async/await | No | New | Stable | Stable |
| Module path changes | Old | New | Stable | Stable |
| Disjoint capture in closures | No | No | New | Stable |
| Default cargo resolver v2 | No | No | New | Stable |
| IntoFuture in prelude | No | No | No | New |
| unsafe_op_in_unsafe_fn | Allow | Allow | Warn | Error |
| gen keyword reserved | No | No | No | Yes |
| RPIT lifetime captures | Old | Old | Old | New rules |
| Minimum Rust version | 1.0 | 1.31 | 1.56 | 1.85 |
Embed Badges
Add live Rust status badges to your README, docs, or dashboard.
Health Status
Overall support health

EOL Countdown
Next end-of-life date

Latest Version
Current stable release

CVE Status
Known vulnerabilities

Frequently Asked Questions
Common questions about Rust releases and lifecycle.