🦀 What’s New in Rust 1.96.0
Today’s issue: Reverse-Engineering Whoop 5.0, Rust’s Official LLM Policy, and Thank You for Your Support
Hello Rustaceans!
In this issue, we’ll discuss the latest release of Rust 1.96.0, spotlight a project, and highlight 10 awesome links of the week.
Here’s issue 122.
MAIN NEWS
What’s New in Rust 1.96.0
For so long I’ve cursed at range-related footguns more times than I’d like to admit, and last week’s release of 1.96.0 feels like a breath of properly-scoped air.
The new core::range Types is the highlight for me. For years we’ve lived with the awkward reality that Range, RangeFrom, etc., implement Iterator directly.
That made them fundamentally incompatible with Copy, forcing us into workarounds when storing slice bounds in structs or passing them around in performance-critical code.
RFC 3550’s new range types finally fix this. By implementing IntoIterator instead of Iterator, the new core::range::Range, RangeFrom, and RangeInclusive can be Copy.
This is benefitial for anyone building parsers, span trackers, or any kind of indexed data structure.
Below is an example it enables.
use core::range::Range;
#[derive(Clone, Copy)]
pub struct Span(Range<usize>);
impl Span {
pub fn of(self, s: &str) -> &str {
&s[self.0]
}
}No more manually splitting start/end indices just to keep Copy. The new RangeInclusive also exposes its fields publicly, which feels much more honest.
Pro tip for library authors: start using impl RangeBounds in your APIs now. It accepts both legacy and new ranges, giving you a smooth migration path before the syntax eventually switches in a future edition.
The release also brought better assertions with the new assert_matches! and debug_assert_matches! which are small but incredibly welcome.
Instead of assert!(matches!(value, pattern)) that gives you a terrible error message, these print the actual value on failure. Perfect for those debugging sessions.
The WASM target changes are also significant. No more silent --allow-undefined behavior, undefined symbols are now hard linker errors. This catches real bugs earlier. If you actually need the old behavior, you now have to be explicit about it.
The Rust team continues to build the kind of thoughtful, battle-hardened improvements that make me love this language.
If you’re doing any kind of span handling, indexing, or parser work, the new ranges alone are worth the update.
THANK YOU
Last week, some of you readers pledged a subscription to support the newsletter. We’re incredibly grateful and thank you for the support.
If you enjoy reading the newsletter and would like to support our work, you can pledge a subscription too. Read on.
PROJECT SPOTLIGHT 💡
aws-lc-rs
Aws-lc-rs is a cryptographic library using AWS-LC for its cryptographic operations.
If you’re tired of crypto libraries that force you to choose between developer happiness and staying employed, aws-lc-rs is the choice.
What makes it awesome:
Ring-compatible API: Swap the crate name, maybe update a version pin, and your existing code mostly just works.
Real FIPS support: Uses AWS-LC-FIPS so you can actually deploy to government and high-compliance environments without custom heroics.
Two-speed build system: Regular aws-lc-sys for speed demons, and aws-lc-fips-sys when the suits come knocking.
And the good part? aws-lc-rs is open-source at https://github.com/aws/aws-lc-rs.
AWESOME LINKS OF THE WEEK 🔗
The Rust project is adding an official LLM policy: it will now require disclosure, human originality, and understanding of changes to curb low-effort AI-generated PRs. The Rust Foundation launched the Maintainers Fund to provide long-term financial support for Rust maintainers, calling for donations from individuals and companies. The Rust team wrote how they use Josh, a fast git filtering tool, to efficiently manage and sync code across multiple repositories for tools like Miri and Rust Analyzer. Also Tiffany Pek Yuan is a rising Rust maintainer who joined via GSoC two years ago and now contributes to the Compiler team.
Bennett reverse-engineered the Whoop 5.0 in 24 hours because subscriptions suck. Result? Goose, an open-source, local-first SwiftUI + Rust iOS app that reads your band data over Bluetooth with no sub needed. King behavior.
Nick Fitzgerald wrote on Structure-Aware Fuzzing Experiment, comparing structure-aware fuzzing methods for WebAssembly in Rust.
DeepCausality peeps published Counterfactuals via the Causal Monad, bringing elegant monadic causal reasoning to Rust, enabling abduction-free counterfactuals, and built-in closed-loop corrective control.
AprilNEA open-sourced OpenLogi v0.2.0, a clean Rust + GPUI alternative to Logitech Options+. Local button remapping, DPI, SmartShift, and per-app profiles with zero telemetry.
Wasmer rewrote their 7-year Django backend in Rust, slashing infra usage by ~90% (220→24 CPUs, 800→64 GB RAM) in 3 months.
Mahavir Dash built Coredump, a free gamified Rust interview prep platform with daily questions, lessons, drills, live coding, duels, interview wall, and curated jobs.
Joshua (Staff Engineer at Google) argues that memory safety bugs will soon kill more people as AI agents unleash mass exploits. Rust is our best defense, and its success is a moral imperative.
Microsoft did the unexpected and introduced Coreutils for Windows installer, featuring Rust-based uutils/coreutils, findutils, grep, and compatibility shims.
Rain Paharia wrote how Oxide’s iddqd library enables efficient Rust maps with keys borrowed from values using unsafe code, rigorously validated for soundness via Miri, property-based testing, and adversarial LLM review.
Bonus:
BurntSushi (aka author of half the crates in your dependency tree) was diagnosed with anti-NMDA receptor encephalitis after severe physical and psychiatric symptoms. The good news: early treatment worked. From us to you: quick recovery fellow Rustacean.
CodeCrafters: Become a Better Rust Engineer
CodeCrafters created amazing Rust courses that push your skills beyond the basics.
You’ll have fun building real-world projects from scratch, including Git, Docker, Redis, Kafka, SQLite, Grep, BitTorrent, HTTP Server, an Interpreter, and DNS.
The courses are self-paced, so you can learn at your own speed.
Join for free and get 40% off when you upgrade. [affiliate]
X | BlueSky | Mastodon | GitHub | LinkedIn | Buy us coffee | hello@rustbytes.com
Happy Pride Month! Wishing every Rustacean a wonderful, colorful, and bug-free month of coding🌈
See you next week!
John & Elley.


