Rustacean Station

What's New in Rust 1.62, 1.63, and 1.64

Mittwoch, 5. Oktober 2022 · 1 h 32

MP3

Shownotes

Jon and Ben discuss the highlights of the 1.62, 1.63, and 1.64 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 (twitter.com/rustaceanfm)

• Discord: Rustacean Station (discord.gg/cHc3Gyc)

• Github: @rustacean-station (github.com/rustacean-station)

• Email: hello@rustacean-station.org

Timestamps & referenced resources

[@00:50] - Rust 1.62 (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html)

• [@00:58] - cargo add (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html…)

• Maintaining sorting in TOML files (github.com/rust-lang/cargo/blob/13ae438cf079da…)

• crates.io/crates/toml_edit

• github.com/killercup/cargo-edit

• [@03:37] - #[default] enum variants (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html…)

• Generated bounds part of RFC (rust-lang.github.io/rfcs/3107-derive-default-e…)

• Macro helper attributes (doc.rust-lang.org/stable/reference/procedural-…)

• Extra bounds on derive (github.com/rust-lang/rust/issues/26925)

• [@07:36] - Thinner, faster mutexes on Linux (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html…)

• Tracking issue (github.com/rust-lang/rust/issues/93740)

• Short thread on the change from Mara (twitter.com/m_ou_se/status/1526211117651050497)

• More details from Mara on pthread mutexes (twitter.com/m_ou_se/status/1505179030336819209)

• [@13:21] - Bare-metal x86_64 target (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html…)

• Target triples (wiki.osdev.org/Target_Triplet)

• Tier 2 target policy (doc.rust-lang.org/rustc/target-tier-policy.htm…)

• Tier 2 targets (doc.rust-lang.org/rustc/platform-support.html#…)

• doc.rust-lang.org/beta/rustc/platform-support/…

• Custom target triples (rustc-dev-guide.rust-lang.org/building/new-tar…)

• [@22:20] - Stabilized APIs (blog.rust-lang.org/2022/06/30/Rust-1.62.0.html…)

• f64::total_cmp (doc.rust-lang.org/stable/std/primitive.f64.htm…)

• Implementing PR (github.com/rust-lang/rust/pull/72568)

• Stdin::lines (doc.rust-lang.org/stable/std/io/struct.Stdin.h…)

• doc.rust-lang.org/stable/std/iter/trait.FusedI…

• [@29:22] - Changelog deep-dive

• cargo -F for --features (github.com/rust-lang/cargo/pull/10576)

• unaligned_references lint now warns by default (github.com/rust-lang/rust/pull/95372)

• addr_of! (doc.rust-lang.org/core/ptr/macro.addr_of.html)

[@31:09] - Rust 1.62.1 (blog.rust-lang.org/2022/07/19/Rust-1.62.1.html)

Not much to talk about. We also didn’t talk about:

• Rustup 1.25.0 (blog.rust-lang.org/2022/07/11/Rustup-1.25.0.html)

• Rustup 1.25.1 (blog.rust-lang.org/2022/07/12/Rustup-1.25.1.html)

[@31:56] - Rust 1.63 (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html)

• [@31:56] - Scoped threads (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• The Leakpocalypse issue (github.com/rust-lang/rust/issues/24292)

• Pre-Pooping Your Pants With Rust (faultlore.com/blah/everyone-poops)

• [@40:41] - Rust ownership for raw file descriptors (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• Rust I/O Safety RFC (rust-lang.github.io/rfcs/3128-io-safety.html)

• [@43:45] - const mutex initialization (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• [@43:54] - Turbofish and impl Trait arguments (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• Search/replace generics reference (reddit.com/r/rust/comments/5penft/comment/dcsg…)

• Rust reference for turbofish (doc.rust-lang.org/stable/reference/paths.html#…)

• [@52:03] - Non-lexical lifetimes migration complete (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• NLL stabilization and borrowck’s future (blog.rust-lang.org/2022/08/05/nll-by-default.h…)

• github.com/rust-lang/polonius

• [@51:33] - Stabilized APIs (blog.rust-lang.org/2022/08/11/Rust-1.63.0.html…)

• array::from_fn (doc.rust-lang.org/stable/std/array/fn.from_fn.…)

• Box::into_pin (doc.rust-lang.org/stable/std/boxed/struct.Box.…)

• Things Rust-in-Linux needs from Rust (github.com/Rust-for-Linux/linux/issues/2)

• [@56:27] - Changelog deep-dive

• cargo --config (doc.rust-lang.org/nightly/cargo/reference/conf…)

• cargo new test code updated (github.com/rust-lang/cargo/pull/10706)

• New targets: Apple WatchOS (github.com/rust-lang/rust/pull/95243) and Nintendo 3DS (github.com/rust-lang/rust/pull/95897)

• ​[OsStr]::join (github.com/rust-lang/rust/pull/96881)

• The Join trait (doc.rust-lang.org/std/slice/trait.Join.html)

[@1:00:24] - Rust 1.64 (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html)

• [@1:00:32] - IntoFuture (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• Reference in original async/await RFC (rust-lang.github.io/rfcs/2394-async_await.html…)

• Original IntoFuture regression (github.com/rust-lang/rust/issues/67706)

• [@1:03:43] - C-compatible FFI types in core (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• libc crate (crates.io/crates/libc)

• libcpocalypse (github.com/dtolnay/semver-trick/tree/7957dfaf6…)

• [@1:09:37] - rust-analyzer component in rustup (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• rust-analyzer proxy binary added to rustup (github.com/rust-lang/rustup/pull/3022)

• [@1:13:19] - Cargo workspace inheritance and multi-target builds (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• Inheriting attributes from the workspace (doc.rust-lang.org/cargo/reference/specifying-d…)

• [@1:15:58] - Stabilized APIs (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• Stabilization PR for ready! (github.com/rust-lang/rust/pull/81050)

• [@1:18:03] - Compatibility notes (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• Increasing the glibc and Linux kernel requirements (blog.rust-lang.org/2022/08/01/Increasing-glibc…)

• RLS deprecation (blog.rust-lang.org/2022/07/01/RLS-deprecation.…)

• [@1:22:33] - Other changes (blog.rust-lang.org/2022/09/22/Rust-1.64.0.html…)

• Profile-Guided Optimization (doc.rust-lang.org/rustc/profile-guided-optimiz…)

• PR landing lint for unused tuple fields (github.com/rust-lang/rust/pull/95977)

• [@1:25:12] - Changelog deep-dive

• [build.jobs] (doc.rust-lang.org/nightly/cargo/reference/conf…)

• Implementing PR for negative values (github.com/rust-lang/cargo/pull/10844)

• New target: Nintendo Switch (github.com/rust-lang/rust/pull/88991)

• Improve derive(Debug) …

0:00 / 0:00