Announcing Rust 1.88.0
84 points by repnop
84 points by repnop
Love to see let
chains stabilize. The weirdness of if let
and while let
were (while mostly aesthetic) were some of my least favorite Rust things.
The rest of this stuff seems nice, incremental and tasteful.
Only (very minor) quibble is that extract_if
taking &mut V
rather than &V
could lead to some very weird side-effect-based code.
I agree. Especially the use of nested statements which often followed them was rather cumbersome to me. Glad it is fixed now.
Let chains are only available in the Rust 2024 edition, as this feature depends on the if let temporary scope change for more consistent drop order.
Earlier efforts tried to work with all editions, but some difficult edge cases threatened the integrity of the implementation. 2024 made it feasible, so please upgrade your crate’s edition if you’d like to use this feature!
This very cleanly illustrates why I love Rust’s approach to versioning.
Really happy to see cargo automatic cache cleaning!
That’s not what it does. It’s talking about cleaning the singular $CARGO_HOME
, e.g. ~/.cargo
, not all the target
directories you may have scattered about.
Obviously let chains are great, but I’m also quite excited for Spans being stabilized in proc macros. I have a proc macro in scheme-rs that lets you define Rust functions available to scheme code, and with this change the location of those functions in their source will be automatically available to the user while debugging.
https://thanks.rust-lang.org/rust/1.88.0/
Both 12 and 13 have the same name. Interesting.
This is almost definitely automated and I’d eager based off of email address. Probably same individual with two machines, perhaps even one for work and one for personal.
It is automated! It’s pulled via git, which respects the mailmap, so yes, it’s probably just a missing mailmap entry.
Let chain is very nice to have stable. It feels like it’s been unstable forever, and I kept writing if let branches in code and then remembering oh, I can’t in this codebase, it’s not using nightly…