This Week in Rust 651
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
Foundation
- Rust Foundation and Package Registry Leaders Unite to Address Open Source Sustainability Crisis
Newsletters
- The Embedded Rustacean Issue #71
Project/Tooling Updates
- Numax - A portable Rust runtime for distributed apps
- Entroly 0.18.0: Rust-powered AI context engine with PRISM reinforcement learning, SimHash dedup, and EGSC caching
- uFerris: A Versatile Learning Board for Rust Embedded
- Record Ownership: Which Side Is Right?
- iroh 1.0.0-rc.0 - The first release candidate
- Burn 0.21.0 Release: Up to 8× Lower Framework Overhead, Differentiable Collectives and Improved Kernels
- Ratty: A terminal emulator with inline 3D graphics
- Announcing the Rust runtime for Appwrite Functions
- Announcing diesel-async 0.9
- Fresh 0.3.4: Ansi-native 'terminal' theme matches the system's theme; UI for Live Grep + custom grep providers; persistent 'dock' split; Verilog/VHDL support; and much more
Observations/Thoughts
- Killing a Cow made my JSON formatter 42% faster
- Getting Started with Geospatial Rust — What satellites measure, spectral bands, indices, cloud detection.
- Lessons Learned Building High-Performance Rust Profiler
- The limits of Rust, or why you should probably not follow Amazon, Cloudflare and Discord
- The hidden cost of mpsc channels
- "Respectful" YAML patching in Rust
Rust Walkthroughs
- Learn Rust Generics and Traits By Building a Mini Blackjack Game
- Build a Full-Featured Text Editor From Scratch | 0xKiire
- Where the sun keeps shinin': the provider pattern
- End-to-End Geospatial Processing with EORST — Build a satellite pipeline in Rust: STAC query to GeoTIFF.
- All the ways to mock your Rust code
- Rust in Android Development: Complete Guide
Miscellaneous
- Announcing the 2026 Rust-Edu Refresh and CFP
Crate of the Week
This week's crate is cloakrs, a library and CLI tool for detecting and masking personally identifiable information.
Despite having no suggestion to work with, llogiq is content 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, 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.
No Calls for participation were submitted this week.
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.
- Scientific Computing in Rust 2026| 2026-06-05 | Virtual | 2026-07-08 - 2026-07-10
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
502 pull requests were merged in the last week
Compiler
- consider Result<T, Uninhabited> and ControlFlow<Uninhabited, T> to be equivalent to T for must use lint
- fewer global node_id_to_def_id lookups
- introduce move expressions (move($expr))
- resolve: evaluate private visibilities eagerly in eff vis computation
Library
- add Command::get_resolved_envs
- add Drop::pin_drop for pinned drops
- add keepalive, set_keepalive to TcpStream implementations
- drop unmapped ZSTs in array map
- have arrays' drop_glue just unsize and call the slice version
- implemented PathBuf::into_string
Cargo
- diag: Track Cargo diagnostic warning/error count like is done for rustc
- suggest 'fmt' when user types 'cargo rustfmt'
- rebuild when -Zpublic-dependency changes
Clippy
- add new lint inline_trait_bounds
- new lint: manual_clear
- fix manual_option_zip false positive when the outer param is used in closure
- incompatibility of non_canonical_clone_impl and implicit_return
Rust-Analyzer
- add wrap in tree list with editor
- add diagnostic for E0436
- add diagnostic for E0529
- complete :: on module def
- support deref patterns
- add whitespaces on postfix completion in macro
- do not infer signatures, instead infer anon consts in them
- do not replace closure capture place types with errors if they fail to normalize
- fix handling of self in lower_coroutine_body_with_moved_arguments()
- fix offer on unrelated for toggle_macro_delimiter
- generally fix derive helper resolution in semantics
- in "Implement missing members", do not add assoc types with defaults
- no add spaces on ..= on macro inside macro
- provide an InferCtxt to TyLoweringContext
- provide source map for the lowered let self = self binding in async fns
- ref match uses unified type
- renaming mut vars removed mut in patterns generated by macro
- respect lint attributes for diagnostics that don't set their main node
- remove make mut
Rust Compiler Performance Triage
This week saw a couple of PRs affecting the new trait solver, which is steadily moving forward, in particular #156139 was a massive perf. win. #156185 optimized visibility computation, resulting in up to a 8% win on the typenum crate.
Triage done by @Kobzol. Revision range: 1d72d7e8..aa31d6d8
Summary :
| (instructions:u) | mean | range | count |
|---|---|---|---|
| Regressions ❌ | |||
| (primary) | 0.3% | [0.1%, 0.4%] | 62 |
| Regressions ❌ | |||
| (secondary) | 0.5% | [0.1%, 1.5%] | 77 |
| Improvements ✅ | |||
| (primary) | -1.7% | [-8.8%, -0.2%] | 18 |
| Improvements ✅ | |||
| (secondary) | -13.6% | [-85.6%, -0.0%] | 34 |
| All ❌✅ (primary) | -0.2% | [-8.8%, 0.4%] | 80 |
2 Regressions, 2 Improvements, 5 Mixed; 4 of them in rollups 31 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:
- Rust Foundation Maintainer Fund
- RFC: Inheriting of default-features in Cargo
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
- lint on core::ffi::c_void as a return type
- Tracking issue for release notes of #154647: change c_double to f32 on avr targets
- Stabilize --remap-path-prefix in rustdoc
- Replace printables table with unicode_data.rs tables
- Tracking issue for RFC 2137: Support defining C-compatible variadic functions in Rust (c_variadic
- Tracking Issue for Path::is_empty
- Tracking Issue for integer formatting into a fixed-size buffer
- resolve: Partially convert ambiguous_glob_imports lint into a hard error
Rust RFCs
- Propose the concept of a crates.io username for identity
- Cargo RFC for min publish age
Language Reference
- New rule layout.repr.c.struct.align-empty
Leadership Council
- Establish the funding team
No Items entered Final Comment Period this week for Cargo, Compiler Team (MCPs only), Language Team 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-05-13 - 2026-06-10 🦀
Virtual
- 2026-05-17 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Rust Deep Learning: Third Sunday
- 2026-05-19 | Virtual (Washington, DC, US) | Rust DC
- Mid-month Rustful
- 2026-05-20 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
- Mouse Control with Rust
- 2026-05-20 | Virtual (Girona, ES) | Rust Girona
- Weekly coding session
- 2026-05-21 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- May, 2026 SRUG (Seattle Rust User Group) Meetup
- 2026-05-21 | Virtual (Berlin, DE) | Rust Berlin
- Rust Hack and Learn
- 2026-05-21 | Virtual (Charlottesville, VA, US) | Charlottesville Rust Meetup
- Tock OS Part #4 - Capsule coding in QEMU!
- 2026-05-26 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Fourth Tuesday
- 2026-05-26 | Virtual (London, UK) | Women in Rust
- Lunch & Learn: Seeing Into Your Code - A Practical Guide to Tracing in Rust
- 2026-05-27 | Virtual (Girona, ES) | Rust Girona
- Weekly coding session
- 2026-06-03 | Virtual (Indianapolis, IN, US) | Indy Rust
- Indy.rs - with Social Distancing
- 2026-06-04 | Virtual (Berlin, DE) | Rust Berlin
- Rust Hack and Learn
- 2026-06-04 | Virtual (Nürnberg, DE) | Rust Nuremberg
- Rust Nürnberg online
- 2026-06-07 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Rust Deep Learning: First Sunday
- 2026-06-09 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Second Tuesday
- 2026-06-10 | Virtual (Girona, ES) | Rust Girona
- Weekly coding session
Asia
- 2026-05-13 | Malaysia, MY | Rust Meetup Malaysia
- Rust Meetup May 2026
- 2026-05-14 | Seoul, KR | Seoul Rust (Programming Language) Meetup
- Seoul Rust Meetup
- 2026-05-16 | Bangalore, IN | Rust Bangalore
- May 2026 Rustacean meetup
- 2026-06-02 | Beijing, CN | Voice AI and Rust Meetup (Rust for AI, lowcoderust.com)
- AI Agents and Open Source LLM (Call for Speakers)
Europe
- 2026-05-13 | Girona, ES | Rust Girona
- Rust Girona Hack & Learn 05 2026
- 2026-05-14 | Switzerland, CH | PostTenebrasLab
- Rust Meetup Geneva
- 2026-05-18 - 2026-05-23 | Utrecht, NL | RustWeek 2026
- RustWeek 2026
- 2026-05-18 | Milano, MI, IT | Rust Language Milan
- RustWeek 2026
- 2026-05-19 | Aarhus, DK | Rust Aarhus
- Hack Night
- 2026-05-19 | Amsterdam, NL | RustNL
- RustWeek 2026 announcement
- 2026-05-19 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
- Cross-Building & Cross-Testing
- 2026-05-19 | London, UK | Women in Rust
- RustWeek lunch meetup
- 2026-05-21 | Amsterdam, NL | RustNL
- RustWeek Hackathon
- 2026-05-22 | Amsterdam, NL | RustNL
- Bike tour around Utrecht
- 2026-05-26 | Dortmund, DE | Rust Dortmund
- Rust Dortmund Meetup - Agentic Programming - May
- 2026-05-26 | Manchester, UK | Rust Manchester
- Rust Manchester May Code Night
- 2026-05-29 | Berlin, DE | Rust Berlin
- Rust Berlin Talks: The next generation
- 2026-06-03 | Dublin, IE | Rust Dublin
- Join us live and INPERSON for Rust 261
North America
- 2026-05-14 | Lehi, UT, US | Utah Rust
- Utah Rust May Meetup
- 2026-05-14 | Mountain View, CA, US | Hacker Dojo
- RUST MEETUP at HACKER DOJO
- 2026-05-14 | Portland, OR, US | PDXRust
- From Radio Waves to Pixels - Real-Time Visualizations with Rust and WebAssembly
- 2026-05-14 | San Diego, CA, US | San Diego Rust
- San Diego Rust May Meetup - Back in person!
- 2026-05-16 | Boston, MA, US | Boston Rust Meetup
- Lechmere Rust Lunch, May 16
- 2026-05-19 | San Francisco, CA, US | San Francisco Rust Study Group
- Rust Hacking in Person
- 2026-05-20 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
- Mouse Control with Rust
- 2026-05-20 | San Francisco, CA, US | Bay Area Rust Meetup
- Bay Area Rust Meetup
- 2026-05-21 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
- May, 2026 SRUG (Seattle Rust User Group) Meetup
- 2026-05-21 | Nashville, TN, US | Music City Rust Developers
- Community Meetup
- 2026-05-23 | Boston, MA, US | Boston Rust Meetup
- Allston Rust Lunch, May 23
- 2026-05-27 | Austin, TX, US | Rust ATX
- Rust Lunch - Fareground
- 2026-05-28 | Atlanta, GA, US | Rust Atlanta
- Rust-Atl
- 2026-05-28 | Los Angeles, CA, US | Rust Los Angeles
- Rust LA: Rust in Embedded & Autonomous Systems at Parallel Systems in DTLA
- 2026-05-30 | Boston, MA, US | Boston Rust Meetup
- Central Cambridge Rust Lunch, May 30
- 2026-06-04 | Saint Louis, MO, US | STL Rust
- Testing, Coverage, Tracey & Mutations
- 2026-06-06 | Boston, MA, US | Boston Rust Meetup
- Boston Common Rust Lunch, June 6
Oceania
- 2026-05-14 | Melbourne, AU | Rust Melbourne
- Rust Melbourne - May 2026
- 2026-05-26 | Barton, ACT, AU | Canberra Rust User Group
- May Meetup
South America
- 2026-05-13 | Montevideo, UY | Rust Meetup Uruguay
- Rust Uruguay meetup de Mayo
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
Of the last 150 merged PRs to Bun, 108 are memory-safety-adjacent — missed cleanup on an error path, use-after-free, uninitialized reads, out-of-bounds access, reentrancy. 75 of those would not compile in a language with destructors, move semantics, and a borrow checker. One in three PRs we ship is "forgot to free something on an error path."
Of the 108, ~88 are in Zig. The ~14 in C++ are mostly ref-cycles and GC-concurrency races — the residual class that survives any language. So the Zig→Rust delta is real: the Zig bugs are exactly the destructor/ownership-fixable kind, and the C++ side is already near the floor.
Without stronger compile-time guarantees, this stays a cat-and-mouse game. The proposal is to remove the largest bug class structurally rather than fix instances of it indefinitely.
– Jarred Sumner on the bun github
Thanks to Brian Kung 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
Discuss on r/rust
Discussion in the ATmosphere