
What's New in Rust 1.79 and 1.80
Rustacean Station
00:00
Intro
This chapter delves into the new features of Rust version 1.79, with a specific focus on inline constant expressions. The speakers explain how these enhancements work, their practical implications, and the increased flexibility they offer to Rust developers.
Transcript
Play full episode
Transcript
Episode notes
Jon and Ben discuss the highlights of the 1.79 and 1.80 releases of Rust.
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: @rustaceanfm
- Discord: Rustacean Station
- Github: @rustacean-station
- Email: hello@rustacean-station.org
Timestamps & referenced resources
[@01:02] - Rust 1.79
- [@01:02] - Inline const expressions
- [@08:33] - Bounds in associated type position
- [@14:11] - Extending automatic temporary lifetime extension
- [@21:55] - Frame pointers enabled in standard library builds
- [@25:37] - Stabilized APIs
- [@25:37] -
{integer}::unchecked_add
- [@27:39] -
<*const [T]>::len
- [@29:21] -
<[u8]>::utf8_chunks
- [@31:21] -
CStr::count_bytes
- [@32:41] -
num::NonZero<T>
- [@36:30] -
io::Error::downcast
- [@36:50] -
path::absolute
- [@25:37] -
- [@38:18] - Changelog deep-dive
- [@38:31] - Stabilize WASM target features that are in phase 4 and 5
- [@39:15] - Document overrides of
clone_from()
in core/std - [@41:46] - Switch to using gitoxide by default for listing files in cargo
- [@43:03] - Stabilize lint unnameable_types
- [@44:46] -
manual_clamp
lint
[@45:46] - Rust 1.80
- [@46:09] -
LazyCell
andLazyLock
- [@53:42] - Checked
cfg
names and values - [@56:41] - Exclusive ranges in patterns
- [@58:52] - Stabilized APIs
- [@59:05] -
Vec::<[T; N]>::into_flattened
- [@1:00:31] -
<[u8]>::trim_ascii
- [@1:02:06] -
NonNull::add
and otherptr
-like methods - [@1:03:41] -
impl IntoIterator for Box<[T]>
- [@1:05:46] -
Option::take_if
- [@1:07:30] -
Ipv4Addr::to_bits
- [@59:05] -
- [@1:09:10] - Changelog deep-dive
- [@1:09:25] -
x86_64-unknown-linux-none
- [@1:11:07] - Add
size_of
andalign_of
to the prelude - [@1:12:34] - Never type fallback flowing into unsafe
- [@1:17:29] - New panics and aborts in the standard library
- [@1:20:28] - Restore enum variants in rustdoc for type aliases
- [@1:21:12] - Change
assigning_clones
lint topedantic
- [@1:22:15] - Turn lints into hard errors
- [@1:22:49] -
env::set_var
regression - [@1:24:34] -
StdoutLock
regression
- [@1:09:25] -
[@1:26:00] - Rust 1.80.1
Fixes miscompilation when comparing
floats
and false positives in the dead_code
lint.
Credits
Intro Theme: Aerocity
Audio Editing: Jon Gjengset
Hosting Infrastructure: Jon Gjengset
Show Notes: Jon Gjengset
Hosts: Jon Gjengset and Ben Striegel
The AI-powered Podcast Player
Save insights by tapping your headphones, chat with episodes, discover the best highlights - and more!