Hello and welcome to another issue of This Week in Rust! Rust is a programming language empowering everyone to build reliable and efficient software. This is a weekly summary of its progress and community. Want something mentioned? Tag us at @thisweekinrust.bsky.social on Bluesky or @ThisWeekinRust on mastodon.social, or send us a pull request. Want to get involved? We love contributions.
This Week in Rust is openly developed on GitHub and archives can be viewed at this-week-in-rust.org. If you find any errors in this week's issue, please submit a PR.
Want TWIR in your inbox? Subscribe here.
Updates from Rust Community
Official
- Announcing Rust 1.90.0 | Rust Blog
- Variadic Generics Micro Survey
- Leadership Council September 2025 Representative Selections
- crates.io: Malicious crates faster_log and async_println
Project/Tooling Updates
- Temporal_rs is here! The datetime library powering Temporal in Boa and V8
- Wild Linker Update - 0.6.0
- Fighting human trafficking with self-contained applications
- CHERI with a Linux on top
- SeaORM 2.0: A closer look
- GuardianDB: The Rust Implementation of OrbitDB. A peer-to-peer database for the Decentralized Web.
- Styx Emulator: A new emulation framework for DSPs, weird SoCs and embedded systems
- GlueSQL v0.18.0 adds Send/Sync support and a new derive macro for typed row mapping
- Implementing automatic TLS for Pingoo: here is what it takes to build a secure internet
Observations/Thoughts
- A more stable Rust Ecosystem
- Comparing Rust to Carbon
- Canceling asynchronous Rust
- Rust Contribution Experience: From a Curious Outsider to a GreptimeDB Advocator: My Journey into Open Source Contribution
- Why Rust?
Rust Walkthroughs
- Rust unit testing: builtin tools
- From Rust to Reality: The Hidden Journey of fetch_max
- Reducing binary size of (Rust) programs with debuginfo
- Axum Backend Series: Models, Migration, DTOs and Repository Pattern
- [video] chatting about rust/concurrency
- [video] Intro to micro:bit and Embedded Rust
- [video] (Kernel) Task Switching in Rust
Miscellaneous
Crate of the Week
This week's crate is faer, a eneral-purpose linear algebra library for rust, with a focus on high performance for algebraic operations on medium/large matrices, as well as matrix decompositions.
Despite another week going by without a suggested weekly crate, llogiq is pleased with his choice.
Please submit your suggestions and votes for next week!
Calls for Testing
An important step for RFC implementation is for people to experiment with the implementation and give feedback, especially before stabilization.
If you are a feature implementer and would like your RFC to appear in this list, add a
call-for-testing
label to your RFC along with a comment providing testing instructions and/or
guidance on which aspect(s) of the feature need testing.
- No calls for testing were issued this week by Rust, Rust language RFCs, Cargo or Rustup.
Let us know if you would like your feature to be tracked as a part of this list.
Call for Participation; projects and speakers
CFP - Projects
Always wanted to contribute to open-source projects but did not know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!
Some of these tasks may also have mentors available, visit the task page for more information.
If you are a Rust project owner and are looking for contributors, please submit tasks here or through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
- this-week-in-rust - HTML Missing lang attributes for websites
- GreptimeDb - Supports profile signal for OLTP
- GreptimeDb - Currently KILL cannot terminate queries like INSERT INTO SELECT
- GreptimeDb - Supports exporting compressed CSV or JSON files
CFP - Events
Are you a new or experienced speaker looking for a place to share something cool? This section highlights events that are being planned and are accepting submissions to join their event as a speaker.
No Calls for papers or presentations were submitted this week.
If you are an event organizer hoping to expand the reach of your event, please submit a link to the website through a PR to TWiR or by reaching out on X (formerly Twitter) or Mastodon!
Updates from the Rust Project
430 pull requests were merged in the last week
Compiler
-Znext-solver
allowExprKind::Call
for not-yet defined opaques- destinationPropagation: avoid creating overlapping assignments
- detect attempt to use var-args in closure
- don't apply temporary lifetime extension rules to non-extended
super let
- enable DestinationPropagation by default
- lint more overlapping assignments in MIR
- remove
Rvalue::Len
again - suggest removing
Box::new
instead of unboxing it
Library
- add
[const] PartialEq
bound toPartialOrd
- iterator repeat: no infinite loop for
last
andcount
- make
PeekMut
generic over the allocator - specialize
Iterator::eq{_by}
forTrustedLen
iterators - stabilize
btree_entry_insert
feature - stabilize
new_zeroed_alloc
- stabilize
std::panic::Location::file_as_c_str
- fix WASI implementation of
remove_dir_all
- merge definitions of
StdioPipes
- simplify host lookup
Cargo
Rustdoc
Clippy
match_as_ref
: do not lint if other arm is notNone => None
redundant_clone
: split iterator checks intoredundant_iter_cloned
transmute_ptr_to_ref
: don't suggest.cast
when to-type is DST- add
clippy::self_only_used_in_recursion
lint - do not replace
.unwrap_or(vec![])
by.unwrap_or_default()
nonstandard_macro_braces
: suggest trailing semicolon when needed- fix
option_if_let_else
whenErr
variant is ignored - fix
question_mark
false positive on variables used after - fix
unnecessary_semicolon
false negative on#[feature(stmt_expr_attributes)]
- fix
unnecessary_unwrap
false negative - note that using
enumerate()
will swap the arguments - rework
module_inception
- suggestion for
rest_pat_in_fully_bound_structs
Rust-Analyzer
hover
: unify horizontal rule formatting to---
- add
rust-analyzer.semanticHighlighting.comments.enable
- fix
IfExpr
branches suggests - fix
else
completion beforeelse
keyword - fix
extract_variable
onLetExpr
- fix
unused_variables
shorthand record field - fix apply in inner if for
pull_assignment_up
- fix negative const generic integer literals
- fix not applicable on trailing comma for
remove_dbg
- fix panics on
Foo{mut x}
fordestructure_struct_binding
- fix to implement in-place
stdx::replace
- fix lifetime elision handling for
Fn
-style trait bounds - make flycheck clearing dependency-aware
- port a bunch of stuff from rustc and fix a bunch of type mismatches/diagnostics
Rust Compiler Performance Triage
Moving command-line argument quoting from C++ to Rust (#146700) resulted in a nice performance win when dealing with many dependencies and large workspaces. A somewhat costly destination propagation compiler pass was enabled by default (#142915), which resulted in some build time regressions, but should result in improved runtime performance. The rest of changes were small.
Triage done by @kobzol. Revision range: 52618eb3..ce4beebe
Summary:
(instructions:u) | mean | range | count |
---|---|---|---|
Regressions ❌ (primary) |
0.3% | [0.1%, 1.9%] | 61 |
Regressions ❌ (secondary) |
0.6% | [0.1%, 3.4%] | 90 |
Improvements ✅ (primary) |
-0.5% | [-1.9%, -0.2%] | 29 |
Improvements ✅ (secondary) |
-1.3% | [-22.8%, -0.1%] | 71 |
All ❌✅ (primary) | 0.0% | [-1.9%, 1.9%] | 90 |
1 Regression, 4 Improvements, 4 Mixed; 4 of them in rollups 37 artifact comparisons made in total
Approved RFCs
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
- No RFCs were approved this week.
Final Comment Period
Every week, the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.
Tracking Issues & PRs
Rust
- the
#[track_caller]
shim should not inherit#[no_mangle]
- Allow borrowing array elements from packed structs with ABI align <= packed align
No Items entered Final Comment Period this week for Rust RFCs, Cargo, Language Team, Language Reference, Leadership Council or Unsafe Code Guidelines.
Let us know if you would like your PRs, Tracking Issues or RFCs to be tracked as a part of this list.
New and Updated RFCs
Upcoming Events
Rusty Events between 2025-09-24 - 2025-10-22 🦀
Virtual
- 2025-09-25 | Virtual (Berlin, DE) | Rust Berlin
- 2025-09-28 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2025-10-01 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2025-10-02 | Virtual (Girona, ES) | Rust Girona | Silicon Girona
- 2025-10-04 | Virtual (Kampala, UG) | Rust Circle Meetup
- 2025-10-05 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2025-10-07 | Virtual (Beijing, CN) | WebAssembly and Rust Meetup (Wasm Empowering AI)
- 2025-10-09 | Virtual (Berlin, DE) | Rust Berlin
- 2025-10-09 | Virtual (Girona, ES) | Rust Girona | Silicon Girona
- 2025-10-09 - 2025-10-10 | Hybrid (Paris, FR) | EuroRust
- 2025-10-12 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2025-10-14 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2025-10-15 | Virtual (Vancouver, BC, CA) | Vancouver Rust
- 2025-10-16 | Virtual (Girona, ES) | Rust Girona | Silicon Girona
- 2025-10-16 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2025-10-19 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2025-10-21 | Virtual (London, UK) | Women in Rust
- 2025-10-21 | Virtual (Washington, DC, US) | Rust DC
Asia
- 2025-10-02 | Seoul, KR | Seoul Rust (Programming Language) Meetup
- 2025-10-04 | Bangalore, IN | Rust Bangalore
- 2025-10-08 | Kuala Lumpur, MY | Rust Malaysia
- 2025-10-09 | Tokyo, JP | Tokyo Rust Meetup
- 2025-10-20 | Tel Aviv-yafo, IL | Rust 🦀 TLV
Europe
- 2025-09-24 | Göteborg, SE | Rust Göteborg
- 2025-09-24 | München, DE | Rust Munich
- 2025-09-25 | Augsburg, DE | Rust Augsburg
- 2025-09-25 | Copenhagen, DK | Copenhagen Rust Community
- 2025-09-25 | London, UK | Women in Rust
- 2025-09-27 | Stockholm, SE | Stockholm Rust
- 2025-09-30 | London, UK | Rust London User Group
- 2025-10-01 | Olomouc, CZ | Rust Moravia
- 2025-10-01 | Oxford, UK | Oxford ACCU/Rust Meetup.
- 2025-10-01 | Paris, FR | Paris Rustaceans
- 2025-10-02 | Oslo, NO | Rust Oslo
- 2025-10-08 | Girona, ES | Rust Girona | Silicon Girona
- 2025-10-08 | Paris, FR | Rust Paris
- 2025-10-08 | Reading, UK | Reading Rust Workshop
- 2025-10-09 - 2025-10-10 | Hybrid (Paris, FR) | EuroRust
- 2025-10-14 | Basel, CH | Rust Basel
- 2025-10-21 | Aarhus, DK | Rust Aarhus
- 2025-10-21 | Leipzig, SN, DE | Rust - Modern Systems Programming in Leipzig
- 2025-10-21 | London, UK | London Rust Project Group
North America
- 2025-09-24 | Austin, TX, US | Rust ATX
- 2025-09-24 | Charlottesville, VA, US | Charlottesville Rust Meetup
- 2025-09-24 | Chicago, IL, US | Chicago Rust Meetup
- 2025-09-24 | New York, NY, US | Rust NYC
- 2025-09-25 | Atlanta, GA, US | Rust Atlanta
- 2025-09-25 | Nashville, TN, US | Music City Rust Developers
- 2025-09-27 | Boston, MA, US | Boston Rust Meetup
- 2025-09-30 | Boston, MA, US | Boston Rust Meetup
- 2025-10-02 | Mountain View, CA, US | Hacker Dojo
- 2025-10-02 | Saint Louis, MO, US | STL Rust
- 2025-10-04 | Boston, MA, US | Boston Rust Meetup
- 2025-10-09 | Lehi, UT, US | Utah Rust
- 2025-10-16 | Nashville, TN, US | Music City Rust Developers
- 2025-10-21 | San Francisco, CA, US | San Francisco Rust Study Group
- 2025-10-21 | San Francisco, CA, US | Vara & Gear
- 2025-10-22 | Austin, TX, US | Rust ATX
Oceania:
- 2025-10-01 | Perth, WA, AU | Rust Perth Meetup Group
If you are running a Rust event please add it to the calendar to get it mentioned here. Please remember to add a link to the event too. Email the Rust Community Team for access.
Jobs
Please see the latest Who's Hiring thread on r/rust
Quote of the Week
We're here to learn. We will do so relentlessly.
Thanks to John Arundel for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, U007D, joelmarcey, mariannegoldin, bennyvasquez, bdillo
Email list hosting is sponsored by The Rust Foundation