Treceți offline cu aplicația Player FM !
What's New in Rust 1.76, 1.77, and 1.78
Manage episode 446907245 series 2522694
Jon and Ben discuss the highlights of the 1.76, 1.77, and 1.78 releases of Rust.
This episode was recorded as part of a YouTube live stream on 2024-05-18, which you can still watch.
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
[@00:34] - Rust 1.76
- [@01:18] - ABI compatibility updates
- [@08:53] - Type names from references
- [@10:35] - Stabilized APIs
- [@10:56] -
Result::inspect
- [@13:53] -
Arc::unwrap_or_clone
- [@15:25] -
std::hash::DefaultHasher
- [@18:01] -
ptr::addr_eq
- [@10:56] -
- [@21:30] - Changelog deep-dive
- [@21:33] - Resize/hide rustdoc bars
[@22:40] - Rust 1.77
- [@22:51] - C-string literals
- [@28:20] - Support for recursion in
async fn
- [@31:43] -
offset_of!
- [@36:32] - Enable strip in release profiles by default
- [@39:35] - Stabilized APIs
- [@39:36] -
core::net
- [@40:59] -
f64::round_ties_even
- [@42:05] -
Mutex::clear_poison
- [@43:43] -
File::create_new
- [@39:36] -
- [@46:15] - Changelog deep-dive
- [@46:46] - Lint on references to
static mut
- [@50:05] - Undeprecate
unstable_features
lint - [@51:37] - Deny braced macro invocation in let-else
- [@55:45] -
cargo::
in build scripts - [@56:20] - Standardized package ID spec in Cargo
- [@57:36] -
slice::first_chunk
- [@46:46] - Lint on references to
[@59:55] - Rust 1.77.1
Stripping debug info in release builds broke Windows.
[@1:00:58] - Rust 1.77.2
Fixes CVE-2024-24576.
Detailed advisory, fix, and current logic.
[@1:04:54] - Rust 1.78
- [@1:07:55] - Diagnostic attributes
- [@1:13:13] - Asserting
unsafe
preconditions - [@1:19:56] - Deterministic realignment
- [@1:23:24] - Stabilized APIs
- [@1:23:33] -
impl Read for &Stdin
- [@1:24:03] - Relax bounds on
Error
trait implementations
- [@1:23:33] -
- [@1:25:40] - Compatibility notes
- [@1:25:40] - Windows requirement bump
- [@1:29:25] - LLVM 18 brings
*128
ABI change
- [@1:32:04] - Changelog deep-dive
- [@1:32:04] - Make non-
PartialEq
-typed consts as patterns a hard error - [@1:34:59] - Suggest moving definition if non-found macro_rules! is defined later
- [@1:36:08] - Stabilize v4 of Cargo lockfile
- [@1:37:36] -
cargo update
highlights stale dependencies - [@1:38:23] - Deprecate non-extension
.cargo
/config
files - [@1:39:19] - Clippy lint
assigning_clones
- [@1:40:49] - Clippy lint
incompatible_msrv
- [@1:42:22] -
cargo new
stopped commenting inCargo.toml
- [@1:32:04] - Make non-
Credits
Intro Theme: Aerocity
Audio Editing: Aerocity
Hosting Infrastructure: Jon Gjengset
Show Notes: Jon Gjengset
Hosts: Jon Gjengset and Ben Striegel
163 episoade
Manage episode 446907245 series 2522694
Jon and Ben discuss the highlights of the 1.76, 1.77, and 1.78 releases of Rust.
This episode was recorded as part of a YouTube live stream on 2024-05-18, which you can still watch.
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
[@00:34] - Rust 1.76
- [@01:18] - ABI compatibility updates
- [@08:53] - Type names from references
- [@10:35] - Stabilized APIs
- [@10:56] -
Result::inspect
- [@13:53] -
Arc::unwrap_or_clone
- [@15:25] -
std::hash::DefaultHasher
- [@18:01] -
ptr::addr_eq
- [@10:56] -
- [@21:30] - Changelog deep-dive
- [@21:33] - Resize/hide rustdoc bars
[@22:40] - Rust 1.77
- [@22:51] - C-string literals
- [@28:20] - Support for recursion in
async fn
- [@31:43] -
offset_of!
- [@36:32] - Enable strip in release profiles by default
- [@39:35] - Stabilized APIs
- [@39:36] -
core::net
- [@40:59] -
f64::round_ties_even
- [@42:05] -
Mutex::clear_poison
- [@43:43] -
File::create_new
- [@39:36] -
- [@46:15] - Changelog deep-dive
- [@46:46] - Lint on references to
static mut
- [@50:05] - Undeprecate
unstable_features
lint - [@51:37] - Deny braced macro invocation in let-else
- [@55:45] -
cargo::
in build scripts - [@56:20] - Standardized package ID spec in Cargo
- [@57:36] -
slice::first_chunk
- [@46:46] - Lint on references to
[@59:55] - Rust 1.77.1
Stripping debug info in release builds broke Windows.
[@1:00:58] - Rust 1.77.2
Fixes CVE-2024-24576.
Detailed advisory, fix, and current logic.
[@1:04:54] - Rust 1.78
- [@1:07:55] - Diagnostic attributes
- [@1:13:13] - Asserting
unsafe
preconditions - [@1:19:56] - Deterministic realignment
- [@1:23:24] - Stabilized APIs
- [@1:23:33] -
impl Read for &Stdin
- [@1:24:03] - Relax bounds on
Error
trait implementations
- [@1:23:33] -
- [@1:25:40] - Compatibility notes
- [@1:25:40] - Windows requirement bump
- [@1:29:25] - LLVM 18 brings
*128
ABI change
- [@1:32:04] - Changelog deep-dive
- [@1:32:04] - Make non-
PartialEq
-typed consts as patterns a hard error - [@1:34:59] - Suggest moving definition if non-found macro_rules! is defined later
- [@1:36:08] - Stabilize v4 of Cargo lockfile
- [@1:37:36] -
cargo update
highlights stale dependencies - [@1:38:23] - Deprecate non-extension
.cargo
/config
files - [@1:39:19] - Clippy lint
assigning_clones
- [@1:40:49] - Clippy lint
incompatible_msrv
- [@1:42:22] -
cargo new
stopped commenting inCargo.toml
- [@1:32:04] - Make non-
Credits
Intro Theme: Aerocity
Audio Editing: Aerocity
Hosting Infrastructure: Jon Gjengset
Show Notes: Jon Gjengset
Hosts: Jon Gjengset and Ben Striegel
163 episoade
All episodes
×Bun venit la Player FM!
Player FM scanează web-ul pentru podcast-uri de înaltă calitate pentru a vă putea bucura acum. Este cea mai bună aplicație pentru podcast și funcționează pe Android, iPhone și pe web. Înscrieți-vă pentru a sincroniza abonamentele pe toate dispozitivele.