RepoJournal

$ cat rust-lang/month/2026-08-01.log

Rust

Rust

the month in review · August 2026

Never type and custom allocators stabilize while rustc refactors repeat

August capped a run of deprecations and renames with two headline stabilizations, but the month's consistent weight was the compiler refactor train still pulling ahead.

3234 commits 678 PRs merged 16 releases 31 briefings covered

The month's headline is the never type reaching stable (2026-08-25): code that previously had to spell `!` with `feature(never_type)` can now use it directly. The stabilizations kept coming with custom allocators on Box, RC, and Arc (2026-08-26), allowing allocation strategy to be swapped per container without touching the global allocator. This is the kind of feature that changes library design once it's in, but the immediate practical wins are the smaller ones: `size_of_val_raw`, `align_of_val_raw`, and `Layout::for_value_raw` all stabilized [1].

On the toolchain side, rustc's parallel compilation got granular: `--jobs` options now constrain parallelism within specific compiler phases rather than just the whole build [2]. The internals kept churning too, with region ext traits shrinking in a refactor [3] and native library search moving from `rustc_metadata` into `rustc_codegen_ssa` [4]. The dead-code elimination work in drop elaboration [5] and the privacy caching win from early August are both part of the same drive to cut compile time without changing semantics.

Clippy spent the month tightening its own rules. A fix to `manual_div_ceil` now avoids suggesting rewrites that change evaluation count [6], and the linter got broader use of the `is_none_{expr,pattern}` helpers [7]. The messaging around missing trait items also improved: suggestions now label items that are unstable but not yet implementable [8], which should reduce the "why won't this compile?" confusion for users hitting unstable bounds.

Infrastructure moved in two notable directions. First, crates.io's TypeScript API handlers are now typed with `openapi-msw` [9], a concrete step toward stricter client contracts. Second, the project formally adopted an LLM policy and pushed the next-solver to nightly [ref:???], hinting at where the compiler's trait-solving future is headed. On the administration side, the new Rust Project Director election post signals a leadership transition is underway.

Not all news was rosy: clippy's `--explain` is broken on beta as of late August [ref:???], and there's a flat breaking change from the extern ABI rename [ref:???]. These are the kind of papercuts that bite a release cycle, so if you're on beta, check your clippy output before relying on `--explain`.

References

  1. [1] stabilize size_of_val_raw, align_of_val_raw, Layout::for_value_raw ↗ rust-lang/rust
  2. [2] rustc: Support `--jobs` options for limiting parallelism in various parts of the compiler ↗ rust-lang/rust
  3. [3] Refactor: shrink region ext traits ↗ rust-lang/rust
  4. [4] rustc_metadata: Move native library search code to `rustc_codegen_ssa` ↗ rust-lang/rust
  5. [5] Rollup merge of #159195 - cjgillot:elaborate-drop-flags, r=saethlin rust-lang/rust
  6. [6] fix(manual_div_ceil): avoid suggestions that change evaluation count ↗ rust-lang/rust-clippy
  7. [7] refactor: use `is_none_{expr,pattern}` in more places ↗ rust-lang/rust-clippy
  8. [8] When issuing suggestions for missing trait items, label unstable items ↗ rust-lang/rust
  9. [9] msw: Type API handlers with `openapi-msw` ↗ rust-lang/crates.io

$ ls rust-lang/month/ # the briefings behind this review

Sat Aug 1 RUSTC GAINS GRANULAR PARALLELISM CONTROLS AS COMPILER REFACTORS ACCELERATE Sun Aug 2 RUSTC COMPILATION CUTS 3 SECONDS, STDLIB DITCHES SEALED TRAITS Mon Aug 3 RUST COMPILER CUTS DEAD CODE IN DROP ELABORATION, CLIPPY FIXES DIVISOR SIDE EFFECTS Tue Aug 4 LIBC PLATFORM FIXES SWEEP ACROSS HEXAGON, FUCHSIA, HAIKU Wed Aug 5 RUST COMPILER SHIPS PRIVACY CACHING WIN, LEGACY INT MODULES FULLY DEPRECATED Thu Aug 6 PRIRODA DEBUG ADAPTER LANDS IN MIRI WHILE RUSTC CUTS COMPILE-TIME OVERHEAD Fri Aug 7 TRIAGEBOT GOALS PING REWRITTEN TO CUT DEPS, THORIN BUMPS OBJECT CRATE Sat Aug 8 CLIPPY FIXES NESTED INDEX TRAP, RUST CORE ROLLS UP 28 MERGES Sun Aug 9 RUST-ANALYZER GAINS MACRO SUPPORT IN DOCS, CARGO ABSORBS 14 COMMITS Mon Aug 10 RUST-ANALYZER LANDS PARSER FIXES AND PATTERN INFERENCE OVERHAUL Tue Aug 11 LIBC DEPRECATES LFS TYPES ON 64-BIT ANDROID AND EMSCRIPTEN Wed Aug 12 ARC ASSEMBLY CUTS, LIBC CLEANUP SHIPS, CORTEX-M TEST HARDENS Thu Aug 13 RUST TIGHTENS CLIPPY ENFORCEMENT, FIXES LLM LABEL CONFUSION ACROSS DOCS Fri Aug 14 CLIPPY MODERNIZES PATTERN MATCHING, RUST CORE SHIPS ROLLUP FIXES Sat Aug 15 RUST-ANALYZER FIXES CONSTEVAL ERRORS AND RUSTC_PRIVATE SUPPORT Sun Aug 16 EXTERN CUSTOM ABI STABILIZED, CARGO SUBMODULE UPDATED Mon Aug 17 RUST-ANALYZER SHIPS THREE RELEASES OVERNIGHT; STDLIB FIXES UNWIND GUARDS AND SOCKET PATHS Tue Aug 18 CARGO RE-STABILIZES BUILD-DIR LAYOUT V2 Wed Aug 19 RUST'S INTERNAL CLEANUP ACCELERATES Thu Aug 20 RUST-LANG INFRASTRUCTURE SHIFTS GEARS: DATADOG UPGRADE AND ACCESS REVOCATIONS LEAD THE DAY Fri Aug 21 RUST TOOLING MODERNIZES AS MIRI FIXES ASYNC CRASH Sat Aug 22 Rust rolls 20 PRs into main while rustfmt fixes brace placement Sun Aug 23 RUST ADOPTS LLM POLICY, NEXT-SOLVER HITS NIGHTLY Mon Aug 24 MIRI CRACKS DOWN ON FLEXIBLE SHIM SIGNATURES Tue Aug 25 The never type is stable Wed Aug 26 Custom allocators land on Box, Rc, Arc Thu Aug 27 CLIPPY'S --EXPLAIN IS BROKEN ON BETA Fri Aug 28 Rust renames extern ABI, crates.io cuts feature flags, flate2 ships 1.1.10 Sat Aug 29 New Rust Project Director election post, cargo install --locked in dev guide Sun Aug 30 Rust fixes ICEs in never type attributes and BTreeMap panic safety Mon Aug 31 rust-analyzer 2026-08-31 ships extract-variable assist, libc fixes RTEMS sockets