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
Newsletters
Project/Tooling Updates
- Ring Buffers Project Summary - Redox - Your Next(Gen) OS
- tar-codec: a fast and secure tar parser for the Rust ecosystem
Observations/Thoughts
- Rust Without Shortcuts: What Safety Actually Costs
- What stable Rust stands on
- Where a Flood Goes
- Discussing a rewrite of XArray
- Rust features in the future
- Guidelines for panics in kernel code
- What distributed systems and end-to-end encrypted apps have in common? CRDTs and Rust!
- [video] P99 CONF 2026 | Building Ultra-Performant Message Streaming by Piotr Gankiewicz
Rust Walkthroughs
- The heat is on: handling units in Rust
- Finding panics with Call Graph Analyzer
- [video] Beyond Vibe Coding: Formal Verification for AI-Generated Python & Rust Software
- [video] Rust and the GPU from Native to Web: An Introduction to
wgpuby Liam Rust
Miscellaneous
Crate of the Week
This week's crate is offline-protocol, a crate that supplies mesh-networking/peer discovery for a variety of networks, under AGPL/proprietary license.
Thanks to Gokul for the self-suggestion!
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, Cargo, Rustup or Rust language RFCs.
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.
- sysknife - SetSshdOption reports success while an earlier sshd_config.d drop-in overrides the value it wrote
- sysknife - On Postgres the daemon anchors the audit chain but every reader reports the anchor unsupported and exits 2
- sysknife - ci-local.test.sh stays green when the #555 exit fix, the missing-tool default or the opt-out flag is reverted
- Tabularis - [Feat]: Import connections from pgAdmin 4
- Keepword - Say how many networks have observed a node that isn't located yet
- Octomind -
octomind workflow docsfails with "Is a directory" when./docs/exists - Octomind - Workflow loop with
max_iterations = 0passes validation and never runs - Octomind - ACP: send tool kind, file locations and diffs with tool calls
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 Bluesky or Mastodon!
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.
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 Bluesky or Mastodon!
Updates from the Rust Project
609 pull requests were merged in the last week
Compiler
- account for missing turbofish in resolve errors
- add various
#[inline]annotations for simple functions on hot paths that don't get inlined - deduplicate DefId encodings in the query cache
#[inline(always)] + #[target_feature(enable = "....")]#2- MIR move elimination [4/6]: MoveElimination
rustc_builtin_macroscleanup, part 8- optimize Span operations, especially the hot
Span::to - skip redundant monomorphization checks
- use the span of the doctest code block fence for figuring out the line number
Library
- const-stabilize {
BinaryHeap,BTreeMap,BTreeSet,LinkedList,VecDeque)::{len,is_empty} - core: implement
char::is_xid_{start,continue} - don't try to skip anything in
Skip::advance_by(0) - implement
AsMut<T>andAsRef<T>for! - improve bit permutation codegen
- process: improve the output of
DebugforExitStatuson Unix - stabilize ExitCodeExt for Windows
- stabilize allocators for
Vec::into_iter - stabilize
String::into_chars - stabilize
ptr_cast_slice - stabilize
slice_split_once - stabilize {Rc,
Arc}::is_unique
Cargo
timings: peak memory as a column in unit table- stop uplifting rlibs on nightly
- exclude abspath of path deps from
-Cmetadatahash - test: simplify file content assertions
- use build-rs for buildscripts
Rustdoc
- include
deprecatedattributes inrustc_resolveintra-doc link resolution - correctly handle inner
deprecatedattribute on modules - don't panic on a nested use group with no path prefix
Rustfmt
- prevent more comment loss in
cfg_select! - don't lose comments and attributes between
cfg_select!predicates, outer/inner blocks, arm body and trailing commas - fix
cfg_if!error count leaks
Clippy
wildcard_imports: no longer lint in automatically derives and proc macro expansions- add
ifs_as_logical_opslint - add lint for
map_or_elsetomap_or - fix
missing_const_for_fnfalse positives inconst impl - fix
double_comparisonssuggestion dropping required parentheses - perf: optimise
unconditional_recursionlint
Rust-Analyzer
- automated sync of target feature implications
- fix NamedTempFile issues on windows
- complete 'main' 'lib' module in sub module
- compute ref-match on undotted self
- do not panic when inline call param usages in macro
- fix
fetch_semanticlogic bug introduced in #22272 - fix status message for clients not supporting
experimental/serverStatusNotification - use absolute path in
format_smolstr - search manifest ancestors for the lockfile when fetching cargo metadata
Rust Compiler Performance Triage
Another week of positive changes. Few unexpected improvements from cleanups and a handful of targeted optimizations.
Apart from instruction count improvements, we also merged a large reduction of query cache size in #164300.
Negative changes come mostly from unexpected doc regression, which is currently under investigation.
Triage done by @panstromek. Revision range: bd4c6cc4..019b59d8
Summary:
| (instructions:u) | mean | range | count |
|---|---|---|---|
| Regressions ❌ (primary) |
0.8% | [0.2%, 6.8%] | 25 |
| Regressions ❌ (secondary) |
6.8% | [0.0%, 189.1%] | 34 |
| Improvements ✅ (primary) |
-0.8% | [-12.6%, -0.1%] | 195 |
| Improvements ✅ (secondary) |
-1.2% | [-10.6%, -0.1%] | 157 |
| All ❌✅ (primary) | -0.6% | [-12.6%, 6.8%] | 220 |
3 Regressions, 6 Improvements, 3 Mixed 32 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:
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
- Add
let_underscore_drop_guardlint. - Deprecate internal function
vec::from_elem - core: Add
assert_matchesanddebug_assert_matchesto the next prelude - clarify when
Vec::into_boxed_slice()is in-place - Partially stabilize
ptr_alignment_typeasalignment_type - std: make
Instanta signedDurationon all platforms - Lower #[no_mangle] to #[symbol_name]/#[link_name]
- lang team review for new trait solver
- Implement
Fntraits for safe functions of any ABI - cmse: lint on unions crossing the secure boundary
Rust RFCs
Compiler Team (MCPs only)
No Items entered Final Comment Period this week for Cargo, Language Team, Language Reference 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
- No New or Updated RFCs were created this week.
Upcoming Events
Rusty Events between 2026-10-28 - 2026-11-25 🦀
Virtual
- 2026-10-28 | Virtual (Cardiff, UK) | Rust and C++ Cardiff
- 2026-10-29 | Virtual | Rust 🦀 Maven
- 2026-11-01 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-11-03 | Virtual | Rust 🦀 Maven
- 2026-11-03 | Virtual (London, UK) | Women in Rust
- 2026-11-04 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2026-11-05 | Virtual (Berlin, DE) | Rust Berlin
- 2026-11-10 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-11-12 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2026-11-15 | Virtual | Rust 🦀 Maven
- 2026-11-15 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-11-17 | Virtual | Rust 🦀 Maven
- 2026-11-17 | Virtual (London, UK) | Women in Rust
- 2026-11-17 | Virtual (Washington, DC, US) | Rust DC
- 2026-11-18 | Hybrid (Vancouver, CA) | Vancouver Rust
- 2026-11-19 | Virtual (Berlin, DE) | Rust Berlin
- 2026-11-24 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
Asia
- 2026-11-03 | Tel Aviv-Yafo, IL | Rust 🦀 TLV
- 2026-11-14 | Bengaluru, IN | Rust Bangalore
Europe
- 2026-10-28 | Copenhagen, DK | Copenhagen Rust Community
- 2026-10-29 | Berlin, DE | Rust Berlin
- 2026-10-31 | Stockholm, SE | Stockholm Rust
- 2026-11-01 - 2026-11-03 | Italy, IN | RustLab
- 2026-11-02 | Berlin, DE | Rust Berlin
- 2026-11-04 | Dublin, IE | Rust Dublin
- 2026-11-05 | Milano, IT | Rust Language Milan
- 2026-11-05 | Oxford, UK | Oxford ACCU/Rust Meetup.
- 2026-11-12 | Geneva, CH | Rust Geneva
- 2026-11-12 | Milano, MI, IT | Rust Language Milan
- 2026-11-17 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
- 2026-11-19 | Aarhus, DK | Rust Aarhus
North America
- 2026-10-28 | Austin, TX, US | Rust ATX
- 2026-10-31 | Boston, MA, US | Boston Rust Meetup
- 2026-11-05 | Montréal, CA | Rust Montréal
- 2026-11-05 | San Francisco, CA | Rust LA: NVIDIA
- 2026-11-05 | Saint Louis, MO, US | STL Rust
- 2026-11-12 | San Diego, CA, US | San Diego Rust
- 2026-11-14 | Boston, MA, US | Boston Rust Meetup
- 2026-11-17 | Los Angeles, CA, US | Rust Los Angeles
- 2026-11-17 | San Francisco, CA, US | San Francisco Rust Study Group
- 2026-11-18 | Hybrid (Vancouver, CA) | Vancouver Rust
- 2026-11-21 | Boston, MA, US | Boston Rust Meetup
South America
- 2026-11-07 | Planalto Paulista, BR | Rust São Paulo Meetup
Oceania:
- 2026-11-24 | Barton, AU | Canberra Rust User 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 at the 25 minute mark and still bikeshedding tabs vs spaces
– Josh Triplett in a Library Team meeting
Thanks to Theemathas for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by:
- nellshamrell
- llogiq
- ericseppanen
- extrawurst
- U007D
- mariannegoldin
- bdillo
- opeolluwa
- bnchi
- KannanPalani57
- tzilist
Email list hosting is sponsored by The Rust Foundation