Rust's 2025 Mid-Year Update: Async Milestones, Linux Kernel Progress, and Ecosystem Evolution
Share this article
The Rust Project has published its comprehensive mid-year progress report, detailing advances across 40 technical goals – including three flagship initiatives – while outlining ambitious plans for the second half of 2025. This update offers critical insights into Rust's evolution as it passes its 10-year anniversary since the 1.0 release.
Flagship Goal Updates
Async Foundations Take Shape
The quest to mature Rust's async ecosystem saw substantial progress:
- Async Traits: Near-complete implementation that will fully replace the popular async-trait crate
- Generators: Experimental support for sync/async generators to simplify iterator and stream creation
- Pin Ergonomics: Work to make low-level async coding more approachable
- dynosaur v0.3: Released with breaking changes ahead of planned 1.0 launch
Despite progress, Technical Lead @tmandry noted challenges: "The scope proved too ambitious for one cycle. We've learned we must resolve foundational questions about pin ergonomics and trait hierarchies before unlocking async's full potential."
Rust in Linux Kernel Advances
The initiative to solidify Rust's place in the Linux kernel made concrete strides:
- ABI Flags: Implementation of RFC #3716 for ABI-modifying compiler flags
- Build System Integration: Extending rustdoc/clippy for kernel build system compatibility
- Low-Level Features: Progress on -Zindirect-branch-cs-prefix flag and sanitizer attributes
- Community Collaboration: Contributions to LLVM/Clang to support kernel needs
Multiple contributions came from the Google Summer of Code program, accelerating development.
RustWeek 2025: 10-Year Reflection
Marking Rust's 10-year anniversary, RustWeek 2025 brought together 57 teams (166 people) for:
- Knowledge sharing and planning sessions
- Review of the Rust Vision Doc setting strategic direction
- Cross-team collaboration on challenges like cross-crate linting
Notable Technical Progress
Performance & Tooling
- Clippy Optimizations: 38-61% speed improvements analyzing major codebases like Tokio
- Const Traits: Syntax finalized (
const trait Trait {}), std library conversion underway - New Trait Solver: Performance within 30-50% of old solver in most cases
Systems & Security
- GPU Offloading: Memory movement landed in nightly, kernel compilation fixes
- Autodiff: Students made significant progress on gradient calculation infrastructure
- TUF Implementation: Selected Merkle Tree approach for crates.io supply chain security
Language Evolution
- Polonius Borrow Checker: Nearing alpha readiness with memory model research
- Niche Checks: Progress on enum discriminant validation for safer low-level code
- C++ Interop: Prototype exploration for richer bindings
Challenges & Reflections
Several goals faced hurdles, revealing Rust's growing complexity:
"In retrospect, the scope of this goal was too large... Flagship goals need mechanisms without hard time bounds – what I've been calling a 'north star'" - @tmandry
Key learnings emerged:
1. Foundational questions about language design must precede major feature work
2. Complex initiatives require more coordination across specialized teams
3. Some problems demand longer-term research horizons
The departure of key contributors like @Eh2406 (due to career changes) highlighted sustainability challenges in volunteer-driven projects.
Looking Ahead
The second half of 2025 will focus on:
- Finalizing async traits and generator support
- Stabilizing Linux kernel toolchain requirements
- Advancing const generics and trait solver performance
- Exploring pin ergonomics and in-place initialization
As Rust enters its second decade, these updates reveal a language ecosystem grappling with its success – balancing ambitious technical vision with the practical constraints of open-source maintenance. The planned vision document suggests a maturing project thoughtfully charting its next evolutionary phase.