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
Foundation
Newsletters
Project/Tooling Updates
- Ferox - A native PostgreSQL client in Rust
- Introducing dial9: A flight recorder for Tokio
- Zellij 0.44: native Windows support, new Rust APIs, remote sessions
- vigil-rs: A Rust Service Supervisor for Containers with PIP 1 handling
- Fyrox 1.0.0
- Edge.js: running Node.js safely in a WebAssembly sandbox with Wasmer and WASIX
- Bookokrat v0.3.8: A terminal EPUB / PDF Book Reader now supports DJVU
- flodl v0.1.5: benchmarking Rust vs PyTorch on 7 models — up to 30% faster with 3-20x tighter variance
- Zero-copy Protobuf and ConnectRPC for Rust
- mtp-rs: pure-Rust MTP library, up to 4x faster than libmtp
- [video] Batty: Supervised Agent Execution for Software Teams — Demo
- indxr v0.2.0: A fast codebase indexer and MCP server for AI coding agents
- halloy 2026.5 - desktop IRC client with IRCv3 capabilities
Observations/Thoughts
- Deadlocking a Tokio Mutex without Holding a Lock
- The Good, the Bad, and the Leaky: jemalloc, bumpalo, and mimalloc in meilisearch
- Maximally minimal view types
- Matching Puzzle Pieces and Disappointing Benchmarks
- What If Traits Carried Values
- An effect notation based on with-clauses and blocks
- Rust threads on the GPU
- Elaborating Rust Traits to Dictionary-Passing Style
Rust Walkthroughs
- ZK snarks for rust developer part 2/8
- Let's see Paul Allen's SIMD CSV parser
- Building an LSP Server with Rust is surprisingly easy and fun
- An Incoherent Rust
- Building pentest devices with Rust and ESP32 microcontrollers
- Rust in Intersec's lib-common, Part 1: Integrating Rust in a C Build System
Crate of the Week
This week's crate is noq, a general purpose implementation of the QUIC transport protocol in pure rust.
Thanks to Brendan O'Brien 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.
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.
- EuroRust | CFP open until 2026-04-27 | Barcelona, Spain | 2026-10-14 - 2026-10-17
- NDC Techtown 2026 | CFP open until 2026-05-03 | Kongsberg, Norway | 2026-09-21 - 2026-09-24
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
433 pull requests were merged in the last week
Compiler
- fix some suggestions of the
for-loops-over-fallibleslint - guard patterns: lowering to THIR
- introduce
#[diagnostic::on_move(message)] - make
par_sliceconsistent with single-threaded execution - privacy: fix type privacy holes in RPITITs
Library
- add APIs for dealing with titlecase
- add
is_disconnectedfunctions to mpsc and mpmc channels - implement
BinaryHeap::as_mut_slice - make
OsString::truncatea no-op whenlen > current_len - optimize 128-bit integer formatting
- optimize
BTreeMap::append()using CursorMut vec::Drain::fill: avoid reference to uninitialized memory- unstable impl of
From<{i64, u64}> for f128
Cargo
- clean: Validate that
target_diris not a file cli: Add support for completing--configargument values withnative-completionscli: complete--configand--colorbefore commandcompile: Make build.warnings ignore non-local deps- fix
symlink_and_directorywhen running in a long target dir name - detect circular publish dependency cycle in workspace publish
- fix fetching non-standard git refspecs on non-github repos
- warn when installing with a non-default toolchain
Clippy
- add
BinaryHeap::pop_if()tomanual_pop_if - fix
collapsible_matchfalse positive when the pat binding is moved or mutated - perf:
manual_is_ascii_check,remove 822 million instructions
Rust-Analyzer
- add
ops::AddAssignimplement for IndentLevel - add applicable on LetExpr for
unwrap_tuple - add applicable on let-else branch for
unwrap_block - add auto trait name for
generate_trait_from_impl - add fixes for
non_exhaustive_letdiagnostic - add mapping to syntax factory constructor methods
- add nested lifetime support for
add_lifetime_to_type - add partial selection for
merge_imports - add wrap multiple attr for
wrap_unwrap_cfg_attr - change
test_nameplaceholder toexecutable_arg - complete block .let in closure expression
- offer
'add_braces'on bin-expr assignment - offer on let-expr for
inline_local_variable - fix asm sym operand parsing for parenthesized expr fragments
- fix indent for
convert_closure_to_fn - fix indent for
trait_impl_redundant_assoc_item - fix not applicable on empty
structforno_such_field - fix other predicate for
replace_is_method_with_if_let_method - fix postfix completion indentation compensation
- fix tuple
structpat expected type - add
ident_patqualifier to fully fn param - don't add a second semicolon after postfix completions
- fill match arms on last comma and empty expr
- fix overlap edit on record to tuple assist uses self
- incorrect flychecks with multiple workspaces
- offer on const like path-expr for
'extract_variable' - replace TODO placeholders in next-solver IrPrint with proper formatting
- implement signature type inference
- improve tmp iterator variable name for
convert_for_to_while_let - migrate
convert_from_to_tryfromassist to SyntaxEditor API - project json compatibility improvements
- project json compatibility improvements
- remove doc comments for
generate_trait_from_impl - remove outdated TODO
- remove the mapping for
expr_underscorefrom the syntax factory constructor - replace direct usage of make with syntax factory and migrate assist to syntaxEditor
- support WhileExpr and ForExpr for
add_label_to_loop - support more runnable kinds in project JSON
Rust Compiler Performance Triage
Lot of mixed results this week. One big regression from #152931 makes the results look pretty negative, but otherwise the week was fairly quiet.
Triage done by @panstromek. Revision range: 5b61449e..6f22f613
Summary:
| (instructions:u) | mean | range | count |
|---|---|---|---|
| Regressions ❌ (primary) |
1.0% | [0.1%, 4.2%] | 27 |
| Regressions ❌ (secondary) |
0.2% | [0.0%, 0.6%] | 36 |
| Improvements ✅ (primary) |
-0.1% | [-0.2%, -0.1%] | 3 |
| Improvements ✅ (secondary) |
-0.3% | [-2.8%, -0.0%] | 14 |
| All ❌✅ (primary) | 0.9% | [-0.2%, 4.2%] | 30 |
1 Regression, 1 Improvement, 4 Mixed; 1 of them in rollups 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
- Tracking Issue for fN::BITS
- Fallback
{float}tof32whenf32: From<{float}>and addimpl From<f16> for f32 - Tracking Issue for tcp_deferaccept
- Tracking Issue for #138068: Add
Result::map_or_defaultandOption::map_or_default - Merge
fabsf16/32/64/128intofabs::<F> - 1.95 beta regression: "malformed feature attribute input"
- Never break between empty parens
Cargo
Compiler Team (MCPs only)
- Emit retags in codegen
- Optimize
repr(Rust)enums by omitting tags in more cases involving uninhabited variants. - Proposal for a dedicated test suite for the parallel frontend
- Promote tier 3 riscv32 ESP-IDF targets to tier 2
- Proposal for Adapt Stack Protector for Rust
Language Reference
No Items entered Final Comment Period this week for Rust RFCs, Language Team, 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 2026-03-25 - 2026-04-22 🦀
Virtual
- 2026-03-25 | Virtual (Girona, ES) | Rust Girona
- 2026-03-26 | Virtual (Berlin, DE) | Rust Berlin
- 2026-03-31 | Virtual (Tel Aviv-yafo, IL) | Code Mavens 🦀 - 🐍 - 🐪
- 2026-04-01 | Virtual (Girona, ES) | Rust Girona
- 2026-04-01 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2026-04-02 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2026-04-04 | Virtual (Kampala, UG) | Rust Circle Meetup
- 2026-04-09 | Virtual (Berlin, DE) | Rust Berlin
- 2026-04-14 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-04-14 | Virtual (London, GB) | Women in Rust
- 2026-04-15 | Virtual (Vancouver, BC, CA) | Vancouver Rust
- 2026-04-19 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-04-21 | Virtual (Washington, DC, US) | Rust DC
Asia
- 2026-03-28 | Delhi, IN | Rust Delhi
- 2026-04-17 | Bangalore, IN, Rust India
- 2026-04-18 | Bangalore, IN, Rust India
Europe
- 2026-03-25 | Dresden, DE | Rust Dresden
- 2026-03-26 | Copenhagen, DK | Copenhagen Rust Community
- 2026-03-26 | Paris, FR | Rust Paris
- 2026-03-27 | Paris, FR | Rust in Paris
- 2026-03-28 | Stockholm, SE | Stockholm Rust
- 2026-04-01 | Berlin, DE | Rust Berlin
- 2026-04-01 | Edinburgh, GB | Rust and Friends
- 2026-04-01 | Oxford, UK | Oxford ACCU/Rust Meetup.
- 2026-04-02 | London, GB | Rust London User Group
- 2026-04-03 | Edinburgh, GB | Rust and Friends
- 2026-04-07 | Basel, CH | Rust Basel
- 2026-04-09 | Geneva, CH | Rust Meetup Geneva
- 2026-04-09 | Oslo, NO | Rust Oslo
- 2026-04-21 | Leipzig, SN, DE | Rust - Modern Systems Programming in Leipzig
North America
- 2026-03-25 | Austin, TX, US | Rust ATX
- 2026-03-25 | New York, NY, US | Rust NYC
- 2026-03-26 | Atlanta, GA, US | Rust Atlanta
- 2026-03-28 | Boston, MA, US | Boston Rust Meetup
- 2026-04-02 | Mountain View, CA, US | Hacker Dojo
- 2026-04-02 | Saint Louis, MO, US | STL Rust
- 2026-04-04 | Boston, MA, US | Boston Rust Meetup
- 2026-04-09 | San Diego, CA, US | San Diego Rust
- 2026-04-11 | Boston, MA, US | Boston Rust Meetup
- 2026-04-14 | Charlottesville, VA, US | Charlottesville Rust Meetup
- 2026-04-16 | Seattle, WA, US | Seattle Rust User Group
- 2026-04-18 | Boston, MA, US | Boston Rust Meetup
- 2026-04-20 - 2026-04-22 | Portland, OR | (Tokio)(https://tokio.rs/)
- 2026-04-21 | San Francisco, CA, US | San Francisco Rust Study Group
- 2026-04-22 | Austin, TX, US | Rust ATX
Oceania
- 2026-03-26 | Melbourne, AU | Rust Melbourne
South America
- 2026-04-11 | Argentina, AR | Oxidar Org
- 2026-04-17 | Rio de Janeiro, BR | Meetups Rust RJ
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
Code does not become better out of thin air just because you rewrite it in #rustlang.
Despite a third week gone by without a suggestion, llogiq is unrelenting in his quest to find a quote worth your while.
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