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]…
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.
Foundation
Newsletters
Project/Tooling Updates
- The road to SeaQuery 1.0
- rkik v1.0.0 - stateless NTPv4/v6 inspection CLI in Rust
- Introducing cargo safe-publish
- Tracking trust with Rust in the kernel
- Slint 1.13 Released with Live-Preview for Rust and C++
Observations/Thoughts
- Rust Algorithm Bites – Binary Tree Level Order Traversal
- Adding derive(From) to Rust
- Why I Built TLQ (Tiny Little Queue)
- Combining struct literal syntax with read-only field access
- Be Careful Zero-Copying Strings with serde
- Elephants for breakfast: testing untestable functions, one bite at a time
- Demangling the Details: Symbol Resolution in Rusty Trap
- [video] Rust 1.89.0
Rust Walkthroughs
- Let’s write a macro in Rust - Part 2
- How to set up Rust logging in AWS Lambda for AWS CloudWatch
- Building a Todo App in GPUI
Research
- Sharing a mutable reference with Python
- Faster Rust builds on Mac
- Rust Performance Tricks
- [video] Embedded Rust Workshop
- [video] RustCurious 1: Why Rust is Safe: A novel introduction to ownership and borrowing
Miscellaneous
- Elements of Rust: A complete map of the Rust type system
- filtra.io interview with tonari team | Opening Portals With Rust
- [audio] Hyper with Sean McArthur
- [video] Berkeley Seminar | The quest for performance
Crate of the Week
This week’s crate is aehobak, a transcoder for bsdiff binary patches.
Thanks to David Michael Barr for the 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, Rust language RFCs, Cargo or Rustup. Let us know if you would like your feature to be tracked as a part of this list.
RFCs
Rust
Rustup
If you are a feature implementer and would like your RFC to appear on the above list, add the new 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.
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 X (formerly Twitter) 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.
No Calls for papers or presentations were submitted this week.
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 X (formerly Twitter) or Mastodon!
Updates from the Rust Project
383 pull requests were merged in the last week
Compiler
Library
- add Bound::copied
- add Duration::from_nanos_u128
- add Option::reduce
- implement Sum and Product for Saturating(u*)
- implementation: #[feature(nonpoison_condvar)]
- optimize .ilog({2,10}) to .ilog{2,10}()
- str: stabilize round_char_boundary feature
Cargo
- fix(cli): Show the bad manifest path
- add more context to publish-failed error message
- feat: don’t stop at first error when emitting lints and warnings
Clippy
- map_identity: suggest making the variable mutable when necessary
- unit_cmp: don’t lint on explicitly written unit expr
- allow –print=crate-root-lint-levels
- assertions_on_result_states avoid changing return type in more cases
- collapsible_match suggest ref/derefs when needed
- enable clippy::panic in const contexts
- fix false positive of needless_range_loop when meeting multidimensional array
- fix alloc_instead_of_core false positive when alloc is an alias
- fix needless_for_each suggesting wrongly with explicit closure input types
- fix print_literal suggesting wrongly for inline literal following a numbered arg
- fix redundant_closure suggests wrongly with deref overload
- supress excessive_precision when constants are overly precise
Rust-Analyzer
- add progress bars to more places in analysis-stats
- attach the db in one more place in highlighting
- avoid –target option being given twice to rustc when invoked through cargo rustc while fetching target data layout
- deduplicate methods in completion by function ID and not by name
- in highlight_related, when on an unsafe block, don’t highlight unsafe operations of other unsafe blocks
- when mapping next-solver’s dyn type, add Self (aka. bound var ^1.0) to auto traits’ substitutions
- cache trait solving across queries in the same revision
Rust Compiler Performance Triage
A relatively quiet week. #144841 added an optimization for incremental builds that provided a very nice win for the nalgebra crate. #143290 should help avoid instantiating async functions repeatedly in downstream crates.
Triage done by @kobzol..- Revision range: ee361e8f..75ee9ffd
Summary:
| (instructions:u) | mean | range | count |
|---|---|---|---|
| Regressions ❌ | |||
| (primary) | 0.3% | [0.2%, 0.4%] | 7 |
| Regressions ❌ | |||
| (secondary) | 2.0% | [0.1%, 13.6%] | 30 |
| Improvements ✅ | |||
| (primary) | -1.9% | [-7.0%, -0.3%] | 17 |
| Improvements ✅ | |||
| (secondary) | -0.7% | [-1.7%, -0.1%] | 23 |
| All ❌✅ (primary) | -1.2% | [-7.0%, 0.4%] | 24 |
1 Regression, 3 Improvements, 6 Mixed; 5 of them in rollups 45 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:
- No RFCs were approved this week. 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
- don’t apply temporary lifetime extension rules to non-extended super let
- [disposition: not specified] Stabilize new_zeroed_alloc
- Do not materialise X in [X; 0] when X is unsizing a const
- Reject invalid literal suffixes in tuple indexing, tuple struct indexing, and struct field name position
- Stabilize std::panic::Location::file_as_c_str
- Fix backtraces with -C panic=abort on linux; emit unwind tables by default
- Specialize Iterator::eq{_by} for TrustedLen iterators No Items entered Final Comment Period this week for Rust RFCs, 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 2025-09-03 - 2025-10-01 🦀
Virtual
- 2025-09-02 - 2025-09-05 | Hybrid (Seattle, WA, US) | RustConf
- RustConf 2025
- 2025-09-03 | Virtual (Cardiff, UK) | Rust and C++ Cardiff
- Hybrid event with Rust Dortmund!
- 2025-09-06 | Virtual (Kampala, UG) | Rust Circle Meetup
- Rust Circle Meetup
- 2025-09-07 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Rust Readers Discord Discussion: Rust Atomics and Locks
- 2025-09-09 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Second Tuesday
- 2025-09-09 | Virtual (London, UK) | Women in Rust
- From First Lines to First Clients: Carol Nichols on Building a Career in Rust
- 2025-09-11 | Virtual (Berlin, DE) | Rust Berlin
- Rust Hack and Learn
- 2025-09-11 | Virtual (San Diego, CA, US) | San Diego Rust
- San Diego Rust September 2025 Online Meetup
- 2025-09-14 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Rust Readers Discord Discussion: Rust Atomics and Locks
- 2025-09-15 | Virtual (Charlottesville, VA, US) | Charlottesville Rust Meetup
- Setup Tock OS in a virtual environment (online) - prep for Sep 17
- 2025-09-16 | Virtual (Washington, DC, US) | Rust DC
- Mid-month Rustful
- 2025-09-17 | Virtual (Vancouver, BC, CA) | Vancouver Rust
- Rust Study/Hack/Hang-out
- 2025-09-18 | Virtual (Nürnberg, DE) | Rust Nuremberg
- Rust Nürnberg online
- 2025-09-23 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- Fourth Tuesday
- 2025-09-25 | Virtual (Berlin, DE) | Rust Berlin
- Rust Hack and Learn
- 2025-10-01 | Virtual (Indianapolis, IN, US) | Indy Rust
- Indy.rs - with Social Distancing
Africa
- 2025-09-09 | Johannesburg, ZA | Johannesburg Rust Meetup
- Rust by Example - Primitives and Custom Types
Asia
- 2025-09-13 | Hangzhou, CN | WebAssembly and Rust Meetup (Wasm Empowering AI)
- GOSIM AI Hangzhou 2025 (CFP is still open)
- 2025-09-13 - 2025-09-14 | Hangzhou, CN | GOSIM
- GOSIM Hangzhou 2025
- 2025-09-17 | Tel Aviv-yafo, IL | Rust 🦀 TLV
- In person Rust September 2025 at Varonis in Herzeliya
Europe
- 2025-09-03 | Dortmund, DE | Rust Dortmund
- Rust for Safety-Critical Software-Development and other high potential Use Cases
- 2025-09-03 | Edinburgh, UK | Rust and Friends
- Want a Squeezable / Modern / Helpful / Wide Language? Choose Four
- 2025-09-03 | Frankfurt, DE | Rust Rhein-Main
- From bugs to parallelism to future-proofing: What makes Rust different
- 2025-09-03 | Oxford, UK | Oxford ACCU/Rust Meetup.
- September fun
- 2025-09-04 | Berlin, DE | Rust Berlin
- Rust Berlin on location 🏳️🌈 - Edition 006
- 2025-09-04 | Gdansk, PL | Rust Gdansk
- Rust Gdansk Meetup #10
- 2025-09-10 | Reading, UK | Reading Rust Workshop
- Reading Rust Meetup
- 2025-09-11 | Bern, CH | Rust Bern
- 2025 Rust Talks Bern #4 @Zühlke
- 2025-09-16 - 2025-09-18 | Berlin, DE | [Oxidize Conference] (https://oxidizeconf.com/)
- Oxidize Conference
- 2025-09-16 | Leipzig, DE | Rust - Modern Systems Programming in Leipzig
- Topic TBD
- 2025-09-17 | Girona, ES | Rust Girona | Silicon Girona
- Rust Girona Hack & Learn 09 2025
- 2025-09-18 | Aarhus, DK | Rust Aarhus
- Talk Night at Mjølner Informatics
- 2025-09-24 | München, DE | Rust Munich
- Rust Munich 2025 / 3 - hybrid
- 2025-10-01 | Olomouc, CZ | Rust Moravia
- 4. Rust Moravia Meetup (In the capital!)
North America
- 2025-09-02 - 2025-09-05 | Hybrid (Seattle, WA, US) | RustConf
- RustConf 2025
- 2025-09-03 | Phoenix, AZ, US | Desert Rust
- RustConf 2025 Watch Party (Day 1)
- 2025-09-04 | Montréal, QC, CA | Rust Montréal
- September Monthly Social
- 2025-09-04 | Mountain View, CA, US | Hacker Dojo
- RUST MEETUP at HACKER DOJO
- 2025-09-04 | Phoenix, AZ, US | Desert Rust
- RustConf 2025 Watch Party (Day 2)
- 2025-09-04 | Saint Louis, MO, US | STL Rust
- emulation of retro systems (NES, Gameboy) in Rust
- 2025-09-06 | Boston, MA, US | Boston Rust Meetup
- Beacon Hill Rust Lunch, Sep 6
- 2025-09-09 | New York, NY, US | Rust NYC
- Rust NYC: Geometry in Rust at Motif + Rust on RISC‑V/ESP32
- 2025-09-10 | Phoenix, AZ, US | Desert Rust
- Rust <> JS
- 2025-09-11 | Lehi, UT, US | Utah Rust
- Mazes and Graphs in Rust
- 2025-09-11 | México City, MX | Rust MX
- Polars para análisis y manipulación de datos
- 2025-09-14 | Boston, MA, US | Boston Rust Meetup
- Davis Square Rust Lunch, Sep 14
- 2025-09-16 | San Francisco, CA, US | San Francisco Rust Study Group
- Rust Hacking in Person
- 2025-09-16 | San Francisco, CA, US | Vara Network
- Rust Workshop by Vara Network
- 2025-09-17 | Charlottesville, VA, US | Charlottesville Rust Meetup
- Tick, Tock, talk—find out how Rust secures embedded devices | Online setup event Sep 15
- 2025-09-18 | Nashville, TN, US | Music City Rust Developers
- Rust on Bare Metal Series 3 : Place Holder
- 2025-09-18 | Seattle, WA, US | Seattle Rust User Group
- September, 2025 SRUG (Seattle Rust User Group) Meetup
- 2025-09-24 | Austin, TX, US | Rust ATX
- Rust Lunch - Fareground
- 2025-09-25 | Atlanta, GA, US | Rust Atlanta
- Rust-Atl At Manuels Tavern 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
Bugs like this are the worst! It’s almost impossible to catch them in development, because there is never enough load on the system to force the scheduler to move the execution to another thread. So, you end up with one of these “impossible to reproduce, fails sometimes, but never for you” bugs.
It’s mind-blowingly cool that the Rust compiler can detect something like this. And that seemingly unrelated parts of the language, like mutexes, lifetimes and async operations form such a coherent system.
– Bernard Kolobara on their blog
Thanks to llogiq for the suggestion!
Please submit quotes and vote for next week!
This Week in Rust is edited by: nellshamrell, llogiq, cdmistman, ericseppanen, extrawurst, U007D, joelmarcey, mariannegoldin, bennyvasquez, bdillo
Email list hosting is sponsored by The Rust Foundation