This Week in Rust 644
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
* What we heard about Rust's challenges
* Security advisory for Cargo
### Foundation
* Canonical Joins the Rust Foundation as a Gold Member
### Newsletters
* Scientific Computing in Rust #16 (March 2026)
### 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 PID 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 byRust, 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.
* Wild Almonds — Appimage fails to start
* Wild Almonds — implement workspace for user_preference
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-fallibles` lint
* guard patterns: lowering to THIR
* introduce `#[diagnostic::on_move(message)]`
* make `par_slice` consistent with single-threaded execution
* privacy: fix type privacy holes in RPITITs
#### Library
* add APIs for dealing with titlecase
* add `is_disconnected` functions to mpsc and mpmc channels
* implement `BinaryHeap::as_mut_slice`
* make `OsString::truncate` a no-op when `len > 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_dir` is not a file
* `cli`: Add support for completing `--config` argument values with `native-completions`
* `cli`: complete `--config` and `--color` before command
* `compile`: Make build.warnings ignore non-local deps
* fix `symlink_and_directory` when 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()` to `manual_pop_if`
* fix `collapsible_match` false positive when the pat binding is moved or mutated
* perf: `manual_is_ascii_check,` remove 822 million instructions
#### Rust-Analyzer
* add `ops::AddAssign` implement 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_let` diagnostic
* 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_name` placeholder to `executable_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 `struct` for `no_such_field`
* fix other predicate for `replace_is_method_with_if_let_method`
* fix postfix completion indentation compensation
* fix tuple `struct` pat expected type
* add `ident_pat` qualifier 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_tryfrom` assist 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_underscore` from 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
Full report here
### Approved RFCs
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
* RFC: map_or_default in Option and Result
### 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}` to `f32` when `f32: From<{float}>` and add `impl From<f16> for f32`
* Tracking Issue for tcp_deferaccept
* Tracking Issue for #138068: Add `Result::map_or_default` and `Option::map_or_default`
* Merge `fabsf16/32/64/128` into `fabs::<F>`
* 1.95 beta regression: "malformed feature attribute input"
* Never break between empty parens
##### Cargo
* feat: add frame-pointers profile option
##### 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
* Guarantee alignment of fixed-width integer primitives
_No Items entered Final Comment Period this week forRust 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
* Propose the Rust Foundation Maintainer fund
* Avoid linting `unreachable_code` on `todo!()`
## Upcoming Events
Rusty Events between 2026-03-25 - 2026-04-22 🦀
### Virtual
* 2026-03-25 | Virtual (Girona, ES) | Rust Girona
* **Rust Girona Hack & Learn 03 2026**
* 2026-03-26 | Virtual (Berlin, DE) | Rust Berlin
* **Rust Hack and Learn**
* 2026-03-31 | Virtual (Tel Aviv-yafo, IL) | Code Mavens 🦀 - 🐍 - 🐪
* **Web development using axum in Rust - part 1**
* 2026-04-01 | Virtual (Girona, ES) | Rust Girona
* **Sessió setmanal de codificació / Weekly coding session**
* 2026-04-01 | Virtual (Indianapolis, IN, US) | Indy Rust
* **Indy.rs - with Social Distancing**
* 2026-04-02 | Virtual (Nürnberg, DE) | Rust Nuremberg
* **Rust Nürnberg online**
* 2026-04-04 | Virtual (Kampala, UG) | Rust Circle Meetup
* **Rust Circle Meetup**
* 2026-04-09 | Virtual (Berlin, DE) | Rust Berlin
* **Rust Hack and Learn**
* 2026-04-14 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
* **Second Tuesday**
* 2026-04-14 | Virtual (London, GB) | Women in Rust
* **👋 Community Catch Up**
* 2026-04-15 | Virtual (Vancouver, BC, CA) | Vancouver Rust
* **Nushell**
* 2026-04-19 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
* **Rust Deep Learning: Third Sunday**
* 2026-04-21 | Virtual (Washington, DC, US) | Rust DC
* **Mid-month Rustful**
### Asia
* 2026-03-28 | Delhi, IN | Rust Delhi
* **Rust Delhi Meetup #13**
* 2026-04-17 | Bangalore, IN, Rust India
* **Rust India Workshop**
* 2026-04-18 | Bangalore, IN, Rust India
* **Rust India Conference**
### Europe
* 2026-03-25 | Dresden, DE | Rust Dresden
* **First Meetup**
* 2026-03-26 | Copenhagen, DK | Copenhagen Rust Community
* **Rust meetup #66 sponsored by Adapt!**
* 2026-03-26 | Paris, FR | Rust Paris
* **Rust meetup #84**
* 2026-03-27 | Paris, FR | Rust in Paris
* **Rust in Paris**
* 2026-03-28 | Stockholm, SE | Stockholm Rust
* **Ferris' Fika Forum #25**
* 2026-04-01 | Berlin, DE | Rust Berlin
* **Rust Berlin Talks: The next generation**
* 2026-04-01 | Edinburgh, GB | Rust and Friends
* **Rust and Friends (evening pub)**
* 2026-04-01 | Oxford, UK | Oxford ACCU/Rust Meetup.
* **Rust/ACCU meetup.**
* 2026-04-02 | London, GB | Rust London User Group
* **LDN Talks Spring Community Showcase**
* 2026-04-03 | Edinburgh, GB | Rust and Friends
* **Rust and Friends (daytime coffee)**
* 2026-04-07 | Basel, CH | Rust Basel
* **Rust Meetup #15 @ letsboot**
* 2026-04-09 | Geneva, CH | Rust Meetup Geneva
* **Rust Meetup Geneva**
* 2026-04-09 | Oslo, NO | Rust Oslo
* **Rust talks @ AutoStore – "Patterns for Event Driven Systems" and "Rust + WASM"**
* 2026-04-21 | Leipzig, SN, DE | Rust - Modern Systems Programming in Leipzig
* **Native GUIs with Rust**
### North America
* 2026-03-25 | Austin, TX, US | Rust ATX
* **Rust Lunch - Fareground**
* 2026-03-25 | New York, NY, US | Rust NYC
* **Rust NYC's Digital Asset Adoption Special**
* 2026-03-26 | Atlanta, GA, US | Rust Atlanta
* **Rust-Atl**
* 2026-03-28 | Boston, MA, US | Boston Rust Meetup
* **Chinatown Rust Lunch, Mar 28**
* 2026-04-02 | Mountain View, CA, US | Hacker Dojo
* **RUST MEETUP at HACKER DOJO**
* 2026-04-02 | Saint Louis, MO, US | STL Rust
* **SIUE Cruft Crawler with LLM**
* 2026-04-04 | Boston, MA, US | Boston Rust Meetup
* **Winter Hill Rust Lunch, Apr 4**
* 2026-04-09 | San Diego, CA, US | San Diego Rust
* **San Diego Rust April Meetup - Back in person!**
* 2026-04-11 | Boston, MA, US | Boston Rust Meetup
* **Brookline Rust Lunch, Apr 11**
* 2026-04-14 | Charlottesville, VA, US | Charlottesville Rust Meetup
* **Sharpening Your Rust Skills for Job Interviews**
* 2026-04-16 | Seattle, WA, US | Seattle Rust User Group
* **April, 2026 SRUG (Seattle Rust User Group) Meetup**
* 2026-04-18 | Boston, MA, US | Boston Rust Meetup
* **Harvard Square Rust Lunch, Apr 18**
* 2026-04-20 - 2026-04-22 | Portland, OR | Tokio
* **TokioConf 2026**
* 2026-04-21 | San Francisco, CA, US | San Francisco Rust Study Group
* **Rust Hacking in Person**
* 2026-04-22 | Austin, TX, US | Rust ATX
* **Rust Lunch - Fareground**
### Oceania
* 2026-03-26 | Melbourne, AU | Rust Melbourne
* **TBD March Meetup**
### South America
* 2026-04-11 | Argentina, AR | Oxidar Org
* **Oxidar.org Hackaton - Snakear - ¡Veni a hackear con Rust!**
* 2026-04-17 | Rio de Janeiro, BR | Meetups Rust RJ
* **Meetup 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.
– allp on mastodon
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 byThe Rust Foundation_
Discuss on r/rust
This Week in Rust 644 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...
#This #Week #in #Rust
Origin | Interest | Match