The Rust team has released version 1.100.0, featuring a long-awaited stable never type, core allocator traits, and new Cargo features for dependency management.

The never type, written as !, is now stable after a decade of work and several failed attempts. It represents computations that never produce a value, such as return or std::process::exit. Developers can now name it anywhere in code, and the Infallible type has become an alias for it. This change comes with a breaking adjustment: the never type fallback in editions before 2024 has moved from () to !, which may affect a small amount of code.
Rust 1.100.0 also stabilizes the core of the allocator API, centered on the new Allocator trait. It lets library authors write custom allocators for types such as Vec and Box. A new helper, DropGuard, runs a closure whenever it is dropped, and its dismiss method allows rollback-style logic. Separately, the std::mem::conjure_zst function offers a dedicated, unsafe way to create zero-sized types.
On the tooling side, Cargo now warns about unused dependencies, though the check has limits and does not cover dev-dependencies. Cargo also changes how its build directory is organized to reduce cache collisions. Finally, the min-publish-age option lets projects hold off on newly published crate versions for a set period, which can reduce exposure to malicious releases, though it is not a complete safeguard.
Users with an earlier version can upgrade by running rustup update stable. Full release notes list all other changes across Rust, Cargo, and Clippy.
Source: blog.rust-lang.org







