Discover this podcast and so much more

Podcasts are free to enjoy without a subscription. We also offer ebooks, audiobooks, and so much more for just $11.99/month.

What's New in Rust 1.65, 1.66, and 1.67

What's New in Rust 1.65, 1.66, and 1.67

FromRustacean Station


What's New in Rust 1.65, 1.66, and 1.67

FromRustacean Station

ratings:
Length:
86 minutes
Released:
Feb 13, 2023
Format:
Podcast episode

Description

Jon and Ben discuss the highlights of the 1.65, 1.66, and 1.67 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:11] - Rust 1.65


[@01:28] - Generic Associated Types

More detailed blog post


[@06:48] - let-else statements

if_chain crate


[@16:56] - break from labeled blocks
[@19:21] - Splitting Linux debuginfo
[@20:44] - Stabilized APIs

std::backtrace::Backtrace


[@22:41] - RLS deprecation
[@23:19] - Changelog deep-dive

[@23:30] - Cargo queue reordering

Benchmarking results


[@24:54] - Niches in data-filled enums
[@27:23] - poll_fn and Unpin
[@28:05] - Too many personalities
[@29:20] - uninit integers are UB

Working Group discussion


[@33:23] - Uplift let_underscore lint
[@35:13] - #[non_exhaustive] on enum variants




[@36:27] - Rust 1.66.0


[@36:40] - Explicit discriminants on enums with fields

Dark and forbidden secrets
RFC


[@40:05] - core::hint::black_box

Tracking issue discussion


[@46:34] - cargo remove
[@46:52] - Stabilized APIs

Mixed integer operations
BTreeMap/Set first/last operations
std::os::fd


[@50:51] - Changelog deep-dive

[@51:10] - Cargo publish changes
[@53:33] - Don’t link to libresolv or libiconv on Darwin
[@54:41] - sym in asm
[@55:18] - Soundness fix for impl Trait
[@57:27] - Allow transmutes across lifetimes
[@57:45] - Unicode 15
[@58:24] - for loops over Option and Result




[@1:00:38] - Rust 1.66.1

Security advisory.

Affects primarily users with insteadOf in their git config. Prefer
pushInsteadOf
instead.

You may also be interested in:


Rustup 1.25.2


[@1:02:41] - Rust 1.67


[@1:02:45] - #[must_use] on async fn
[@1:04:07] - sync::mpsc updated

Long-standing mpsc panic
The PR
crossbeam crate

CachePadded
AtomicCell




[@1:07:52] - Stabilized APIs

NonZero*::BITS


[@1:08:38] - Changelog deep-dive

[@1:08:45] - Ratio-aware decompression limit

Original CVE
Original fix


[@1:10:40] - Ordering of array fields
[@1:13:08] - Compilation targets

Sony PlayStation 1 target
Remove linuxkernel targets
Target configuration
x86_64-unknown-none


[@1:14:45] - Dataflow-based MIR constant propagation
[@1:15:37] - The drop order twist

The effect on let-chains
let-chains tracking issue


[@1:20:48] - Inconsistent rounding of 0.5
[@1:23:24] - Android NDK update in 1.68
[@1:23:54] - Help test cargo’s HTTP protocol




Credits

Intro Theme: Aerocity

Audio Editing: Aerocity

Hosting Infrastructure: Jon Gjengset

Show Notes: Jon Gjengset

Hosts: Jon Gjengset and Ben Striegel
Released:
Feb 13, 2023
Format:
Podcast episode

Titles in the series (100)

Come journey with us into the weird, wonderful, and wily world of Rust.