External Publication
Visit Post

This Week in Rust 654

This Week in Rust [Unofficial] June 3, 2026
Source

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

  • Launching the Rust Foundation Maintainers Fund

Project/Tooling Updates

  • One year of Roto, the compiled scripting language for Rust
  • xa11y: cross-platform desktop automation via native accessibility APIs
  • halloy 2026.7 - now supports IRCv3 reply, redact, metadata, bot mode and more!
  • Building a Native Markdown Previewer for AI-Generated Docs with Rust and WebView
  • BPF in the agentic era

Observations/Thoughts

  • Nine Ways to Do Inheritance in Rust, a Language Without Inheritance
  • Async Rust: deep dive into cooperative scheduling and Tokio's architecture

Rust Walkthroughs

  • ZK snarks for Rust developers: R1CS vs Plonkish vs AIR
  • Learn Rust Closures By Building a Tiny Rule-Based Linter
  • Learn Bevy States, Timers, and Grid Movement by Building Snake
  • [video] RustCurious lesson 8: Generics and Monomorphization

Research

  • Counterfactuals via the Causal Monad in Rust

Crate of the Week

This week's crate is remyx, a framework for building TUIs on top of Ratatui.

Thanks to Manuel Garcia de la Vega 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.

  • MD Preview - Package MD Preview for Homebrew Cask
  • OpenSlate - Test Health Check Endpoint
  • OpenSlate - Test Login Endpoint
  • OpenSlate - Test Notes CRUD Endpoint
  • OpenSlate - Test Search Endpoint
  • OpenSlate - Test Preference Endpoint

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

500 pull requests were merged in the last week

Compiler

  • expand async drops during drop elaboration
  • offload_kernel macro expansion
  • std::offload sharedmem

Library

  • constify Iterator-related methods and functions
  • move IoSlice and IoSliceMut to core::io
  • specialize Clone of array IntoIter
  • stabilize Path::is_empty
  • stop needing an alloca for catch_unwind

Cargo

  • diag: Add the 'cargo::default' group
  • diag: Report summaries for unused_deps
  • add --output-format=json to cargo doc as an unstable option
  • add edition for scripts anytime we mutate the manifest

Rustdoc

  • avoid ICE when rendering body-less type consts
  • correctly propagate cfgs for glob reexports
  • deterministic sorting for doc_cfg badges
  • fix ICE on delegated async functions
  • optimize impl sorting
  • separate the caches for synthetic auto trait & blanket impls

Clippy

  • add unused_async_trait_impl lint
  • add new lint: for_unbounded_range
  • added new lint for map_or(..., identity)
  • redundant_pattern_match: improve suggestions
  • faster has_arg
  • fold all early lint passes into one statically-combined pass
  • fold all late lint passes into one statically-combined pass
  • memoize first_node_in_macro for consecutive queries
  • skip disabled off-by-default doc reparses

Rust-Analyzer

  • always use crates from sysroot in proc-macro-srv
  • enable salsa feature for syntax-bridge
  • also consider library features internal
  • do not fill both drop() and pin_drop() in the "fill missing members" assist
  • fix extract variable in token tree replace range
  • port block and loop inference from rustc
  • try to improve completion ranking
  • use add deref in assign instead add &mut for value
  • kill proc-macro-srv processes on shutdown
  • remove direct use of make constructor with editor make
  • remove make from rename and prettify macro expansion

Rust Compiler Performance Triage

This week we saw nice wins across the board thanks to merging several compiler queries together (#155678), and also substantial improvements in doc performance thanks to doing less work when sorting trait impls (#157179).

Triage done by @Kobzol. Revision range: 783eb8c8..4804ad7e

Summary :

(instructions:u) mean range count
Regressions ❌
(primary) 0.3% [0.1%, 0.7%] 14
Regressions ❌
(secondary) 0.4% [0.1%, 0.9%] 39
Improvements ✅
(primary) -0.9% [-6.8%, -0.2%] 111
Improvements ✅
(secondary) -1.1% [-2.9%, -0.1%] 53
All ❌✅ (primary) -0.8% [-6.8%, 0.7%] 125

3 Regressions, 1 Improvement, 2 Mixed; 4 of them in rollups 35 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:

  • 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
  • Tracking Issue for strip_circumfix
  • Tracking issue for CommandExt::show_window
  • Tracking Issue for path_set_times
  • Tracking Issue for nonzero_from_str_radix
  • Tracking Issue for LoongArch CRC Intrinsics
  • Tracking Issue for Vec::from_fn
  • Add Step::forward/backward_overflowing to enable RangeInclusive loop optimizations
  • Stabilize core::range::{legacy, RangeFull, RangeTo}
  • Tracking Issue for box_as_ptr
  • Tracking Issue for explicit-endian String::from_utf16
  • Reduce unreachable-code churn after todo!()
  • make repr_transparent_non_zst_fields a hard error
  • Tracking Issue for algebraic floating point methods
  • riscv: promote d, e, and f target_features to CfgStableToggleUnstable
  • Tracking Issue for PathBuf::into_string
Compiler Team (MCPs only)
  • Desugar async blocks in HIR instead of MIR
  • Test new solver and polonius alpha on CI
  • Add -Zllvm-target-feature target modifier to directly set LLVM-level target features, and deprecate doing that with -Ctarget-feature
  • Set requirements for windows-gnu
  • Create a new Tier 3 target: powerpc64le-unknown-none
  • Add flag to pass MSRV/package.rust-version for use by lints
  • Optimize repr(Rust) enums by omitting tags in more cases involving uninhabited variants.
  • Promote tier 3 riscv32 ESP-IDF targets to tier 2
  • Proposal for Adapt Stack Protector for Rust
Unsafe Code Guidelines
  • Can references to uninhabited types ever be valid?

No Items entered Final Comment Period this week for Rust RFCs, Cargo, Language Team, Language Reference or Leadership Council. 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

  • BTF relocations
  • --allow-unstable-flags: Allow unstable flags on stable

Upcoming Events

Rusty Events between 2026-06-03 - 2026-07-01 🦀

Virtual

  • 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-04 | Virtual (Tel Aviv-yafo, IL) | Code Mavens 🦀 - 🐍 - 🐪
    • Exploring FalkorDB - Learning to use a Graph Database in Rust
  • 2026-06-06 | Virtual (Kampala, UG) | Rust Circle Meetup
    • Rust Circle Meetup
  • 2026-06-07 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
    • Rust Deep Learning: First Sunday
  • 2026-06-08 | Virtual (Cardiff, UK) | Rust and C++ Cardiff
    • RustWeek Reflections
  • 2026-06-09 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
    • Second Tuesday
  • 2026-06-09 | Virtual (London, UK) | Women in Rust
    • 👋 Community Catch Up
  • 2026-06-10 | Virtual (Girona, ES) | Rust Girona
    • Weekly coding session
  • 2026-06-16 | Virtual (Washington, DC, US) | Rust DC
    • Mid-month Rustful
  • 2026-06-17 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
    • Rust Study/Hack/Hang-out
  • 2026-06-17 | Virtual (Girona, ES) | Rust Girona
    • Weekly coding session
  • 2026-06-18 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
    • June, 2026 SRUG (Seattle Rust User Group) Meetup
  • 2026-06-18 | Virtual (Berlin, DE) | Rust Berlin
    • Rust Hack and Learn
  • 2026-06-21 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
    • Rust Deep Learning: Third Sunday
  • 2026-06-23 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
    • Fourth Tuesday
  • 2026-06-23 | Virtual (London, UK) | Women in Rust
    • Lunch & Learn: What the heck are monads - and how do we fake them in Rust
  • 2026-07-01 | Virtual (Indianapolis, IN, US) | Indy Rust
    • Indy.rs - with Social Distancing

Africa

  • 2026-06-09 | Johannesburg, ZA | Johannesburg Rust Meetup
    • Rust by Example - Lifetimes

Europe

  • 2026-06-03 | Dublin, IE | Rust Dublin
    • Join us live and INPERSON for Rust 261
  • 2026-06-03 | Girona, ES | Rust Girona
    • Rust Girona Hack & Learn 06 2026
  • 2026-06-10 | München, DE | Rust Munich
    • Rust Munich 2026 / 2 - Hacking Evening
  • 2026-06-11 | Switzerland, CH | PostTenebrasLab
    • Rust Meetup Geneva
  • 2026-06-12 - 2026-06-14 | Kraków, PL | Rustmeet
    • Rustmeet
  • 2026-06-16 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
    • Interactive: Everything is Open Source
  • 2026-06-16 | Milano, IT | Rust Language Milan
    • Real-time planning in Rust: SolverForge & SERIO
  • 2026-06-18 | Aarhus, DK | Rust Aarhus
    • Talk Night at Danske Commodities
  • 2026-06-23 | Paris, FR | Rust Paris
    • Rust meetup #86
  • 2026-06-25 | Berlin, DE | Rust Berlin
    • Rust Berlin Talks: The next generation

North America

  • 2026-06-04 | Chicago, IL, US | Chicago Rust Meetup
    • Rust Happy Hour
  • 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
  • 2026-06-11 | Lehi, UT, US | Utah Rust
    • Utah Rust June Meetup
  • 2026-06-11 | Mountain View, CA, US | Hacker Dojo
    • RUST MEETUP at HACKER DOJO
  • 2026-06-11 | San Diego, CA, US | San Diego Rust
    • San Diego Rust June Meetup - Back in person!
  • 2026-06-16 | San Francisco, CA, US | San Francisco Rust Study Group
    • Rust Hacking in Person
  • 2026-06-16 | San Francisco, CA, US | San Francisco Rust Study Group
    • Rust Hacking in Person
  • 2026-06-17 | Hybrid (Vancouver, BC, CA) | Vancouver Rust
    • Rust Study/Hack/Hang-out
  • 2026-06-18 | Hybrid (Seattle, WA, US) | Seattle Rust User Group
    • June, 2026 SRUG (Seattle Rust User Group) Meetup
  • 2026-06-24 | Austin, TX, US | Rust ATX
    • Rust Lunch - Fareground
  • 2026-06-24 | Los Angeles, CA, US | Rust Los Angeles
    • Rust LA: Rust-Based Constraint Solvers in 2D Sketching with Zoo Technologies
  • 2026-06-25 | Atlanta, GA, US | Rust Atlanta
    • Rust-Atl
  • 2026-06-26 | New York, NY, US | Rust NYC
    • Rust NYC's Big Summer Social

Oceania

  • 2026-06-25 | Melbourne, AU | Rust Melbourne
    • Rust Melbourne June 2026

South America

  • 2026-06-18 | Florianópolis, BR | Rust SC
    • Rust Floripa

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

If memory safety bugs were Waldo (Wally): finding them in C programs is a "Where's Waldo?" game, and Rust's unsafe simplifies it to "Is this Waldo?"

– kornel on rust-users

Thanks to Moy2010 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

Loading comments...