$ cat rust-lang/month/2026-10-01.log
the month in review · October 2026
Rust 1.99.0 lands with new raw-borrow lint
By RepoJournal · composed from the cited sources · human-reviewed weekly · methodology
cc-rs shipped twice (1.7.0 and 1.9.0), Miri gained FreeBSD CI and dirfd support, and PartialOrd's chaining methods were removed.
Rust 1.99.0 rust-lang/rust
The release notes add an allow-by-default raw_borrows_via_references lint for references that decay immediately into raw borrows, and extend unconditional_panic to function calls that panic when the chunks they operate on are empty. Neither fires unless you enable it or your code already matches the pattern, so treat 1.99.0 as a compile-and-check bump rather than a rewrite.
cc-v1.7.0 rust-lang/cc-rs
by github-actions[bot]
cc-rs 1.7.0 adds Tool::get_envs, deprecates Tool::env, and stores tool env as Arc<OsStr> pairs; it also links c++ when Clang uses libc++ and adds CC_MASM_ASM with an llvm-ml fallback for MASM. Build scripts that read tool env directly through the deprecated accessor should move to the new one.
cc-v1.9.0 rust-lang/cc-rs
by github-actions[bot]
1.9.0 passes AddressSanitizer settings through to the C compiler and fixes flag ordering, plus emits rerun-if-env-changed for the compiler's own environment variables. The latter means more rebuilds when you touch those vars, which is the point: stale C objects after an env change stop being silent.
Add epochs to user session cookies rust-lang/crates.io
Session cookies now carry an epoch, and a cookie older than the epoch on the user record is ignored, effectively logging that user out. The mechanism exists so an admin can invalidate all existing sessions for a user; for everyone else it is invisible until it is not.
MIR move elimination [2/6]: TailCopyToMove rust-lang/rust
The second of six steps toward the MoveElimination pass from RFC 3943 adds a TailCopyToMove pre-pass that converts Copy to Move just before a Return terminator. The PR argues this is valid even for borrowed places because the return copies out; it is a compiler-internal change, but it is the groundwork for the optimization work you will see in later cycles.
Add native FreeBSD runner to CI rust-lang/miri
Miri's CI now runs its test suite on a native FreeBSD runner via the vmactions/freebsd-vm action, to catch differences between Miri's model and the real FreeBSD implementation. Combined with the dirfd work merged into the standard library, the interpreter's Unix coverage is being closed piece by piece.
Rollup merge of #163010 - RalfJung:unix-dir-entry, r=Mark-Simulacrum rust-lang/rust
Because Miri can now handle dirfd, the standard library drops some of its special-casing, which the rollup describes as removing workarounds. If you test std code under Miri, the surface it can actually execute grew.
linux: Improve panic message for out-of-range fds in FD_* functions rust-lang/libc
FD_SET, FD_CLR and FD_ISSET on Linux now panic with a clear message when the fd is out of range instead of an opaque out-of-bounds failure; FD_ZERO is untouched. The same treatment for cygwin, haiku and solaris is explicitly a follow-up, so those platforms behave as before.
$ ls rust-lang/month/ # the briefings behind this review
Keep up with Rust in about 3 minutes: what actually shipped — the commits, pull requests, releases, and security advisories that matter.
fair warning: these emails are deeply technical. diffs, version numbers, CVEs, benchmark deltas. if that's not your idea of a good read, this isn't your newsletter.
Folds into your digest — weekly by default, monthly if you prefer. Unsubscribe in one click.