Jon and Ben discuss the highlights of the 1.81 through 1.84 releases of Rust.
This episode was recorded as part of a YouTube live stream on
2025-10-26, which you can still
Contributing to Rustacean Station
Rustacean Station is a community project; get in touch with us if you’d like to suggest an idea for an episode or offer your services as a host or audio editor!
Twitter: @rustaceanfmDiscord: Rustacean StationGithub: @rustacean-stationTimestamps & referenced resources
[@01:58] - Rust 1.81
[@02:05] - core::error::ErrorTracking issue for generic member accessbuild-std Rust project goal[@08:27] - New sort implementationsPR implementing the changeRepo with the research[@10:49] - #[expect(lint)][@14:37] - Lint reasons[@16:18] - Stabilized APIs[@16:34] - Duration::abs_diff[@17:25] - hint::assert_unchecked[@22:36] - fs::exists[@25:37] - Compatibility notes[@20:40] - Split panic hook and panic handler arguments[@23:00] - Abort on uncaught panics in extern "C" functions[@27:01] - WASI 0.1 target naming changed[@30:10] - Fix for CVE-2024-43402CVE announcement[@33:39] - Rust 1.82
[@33:39] - cargo info[@35:06] - Apple target promotionsPlatform support tiers[@40:10] - Precise capturing use<..> syntaxThe Captures “trick”Talk on impl Trait[@47:24] - Native syntax for creating a raw pointerPointers Are ComplicatedPointers Are Complicated IIPointers Are Complicated III[@53:43] - Safe items with unsafe extern[@59:32] - Unsafe attributes[@1:03:44] - Omitting empty types in pattern matchingThe never type[@1:11:33] - Floating-point NaN semantics and const[@1:17:41] - Constants as assembly immediates[@1:19:06] - Safely addressing unsafe statics[@1:22:56] - Stabilized APIs[@1:23:03] - thread::Builder::spawn_unchecked[@1:25:10] - Working with MaybeUninit[@1:25:48] - Exposed SIMD intrinsics[@1:26:14] - Changelog deep-dive[@1:26:26] - Rewrite binary search implementation[@1:27:30] - Rust 1.83
[@1:27:55] - New const capabilities[@1:31:50] - Stabilized APIs[@1:32:06] - New io::ErrorKind variants[@1:33:10] - Option::get_or_insert_default[@1:34:56] - char::MIN[@1:35:48] - Changelog deep-dive[@1:35:48] - Unicode 16 Emoji[@1:39:51] - Sysroot trim-paths[@1:41:31] - cargo update informs of outdated versions[@1:42:43] - cargo --timings dark mode[@1:43:15] - Checksum-based freshness in Cargo nightly[@1:44:26] - Rust 1.84
[@1:44:40] - Cargo considers Rust version for dependency version selection[@1:49:03] - Migration to the new trait solver begins[@1:51:47] - Strict provenance APIsPointers Are ComplicatedPointers Are Complicated IIPointers Are Complicated IIIRust has provenanceGankra’s write-up on raw pointer designStrict provenance APIs tracking issue[@1:57:53] - Stabilized APIs[@1:57:58] - ::isqrt[@1:58:15] - core::ptr::dangling[@1:59:15] - Changelog deep-dive[@1:59:15] - Include Cargo.lock in published crates[@2:00:12] - wasm32-wasi target removed[@2:01:06] - &raw *invalid_ptr is fineCredits
Hosting Infrastructure: Jon Gjengset
Hosts: Jon Gjengset and Ben Striegel