Rust 1.88

Summary: Rust 1.88.0 Release (June 26, 2025)


๐Ÿš€ Installation

  • Update via rustup update stable.
  • Switch to beta/nightly using rustup default beta|nightly.

๐Ÿ”ง Key Features in 1.88.0

Let Chains (Rust 2024 Edition Only)

  • Allows chaining of let statements with && in if and while.
  • Supports both refutable and irrefutable patterns.
  • Improves readability by reducing nesting.
if let A(x) = some_func() && let B(y) = x && y > 0 { ... }

Naked Functions

  • Define low-level functions without compiler-generated prologue/epilogue.
  • Use #[unsafe(naked)] and naked_asm! block for full control.
#[unsafe(naked)]
pub unsafe extern "sysv64" fn f(a: u64, b: u64) -> u64 {
    core::arch::naked_asm!("lea rax, [rdi + rsi]", "ret");
}

Boolean Configuration in cfg

  • Now supports cfg(true) and cfg(false) for clearer conditional compilation.
  • Replaces prior use of cfg(all()) or cfg(any()) for unconditional flags.

Cargo Cache Auto-Cleanup

  • Cargo now garbage-collects unused cached crates:
    • Downloaded files: deleted after 3 months of inactivity.
    • Local files: deleted after 1 month.
  • Behavior adjustable via cache.auto-clean-frequency.

โœ… Stabilized APIs

New Stable APIs

  • Cell::update, HashMap::extract_if, hint::select_unpredictable, and more.

Now Const-Stable

  • NonNull<T>::replace, std::ptr::swap_nonoverlapping, Cell methods, etc.

๐Ÿ“‰ Other Changes

  • i686-pc-windows-gnu demoted to Tier 2 (still supported, less tested).

๐Ÿ™Œ Contributors

  • Rust 1.88.0 was made possible by numerous community contributions. Thank you!

For full details, check the Rust 1.88.0 release notes.


Leave a comment

Discover more from /root

Subscribe now to keep reading and get access to the full archive.

Continue reading