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
Project/Tooling Updates
- reqwest v0.13 - rustls by default
- rama 0.3.0-alpha.4 is released — modular service framework to move and transform network packets
- Ratatui 0.30.0 is released! - a Rust library for cooking up terminal user interfaces
Observations/Thoughts
- Four Years of Rust: An Odyssey of Failures, Achievements, and Hard Lessons
- Simple Bidirectional Type Inference
- serde's borrowing can be treacherous
- Garbage collection in Rust got a little better
- [audio] Netstack.FM episode 20 — Netstack.FM New Year Special, 2025 Wrap-Up
Rust Walkthroughs
- Why is calling my asm function from Rust slower than calling it from C?
- Rust Errors Without Dependencies
- [video] Building your first APP using the new Hotaru Web Framework!
Miscellaneous
- [audio] 2025 Holiday Special - Rust in Production Podcast
- Investigating and fixing a nasty clone bug
Crate of the Week
This week's crate is wgsl-bindgen, a binding generator for WGSL, the WebGPU shading language, to be used with wgpu.
Thanks to Artem Borisovskiy 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.
Rustup
- Rustup 1.29.0 beta: Call for Testing!
-
Testing steps: See "How to Test" section from above link.
-
No calls for testing were issued this week by Rust, Cargo 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.
- Spindalis - Create an AST parser
- Spindalis - Add procedural macro for definite integral
- Spindalis - Add a function and macro that can expand polynomials
- Spindalis - Add display trait to functions in spindalis core
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.
- RustWeek 2026 | CFP closes 2026-01-18 | Utrecht, The Netherlands | 2026-05-19 - 2026-05-20
- RustConf 2026 | CFP closes 2026-02-16 | Montreal, Quebec, Canada | 2026-09-08 - 2026-09-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
297 pull requests were merged in the last week
Compiler
- recursive delegation improvements
- miri: fix ICE for particular data race situations
- miri: show a warning when combing native-lib mode and many-seeds
- miri: tree Borrows: improve protector end access child skipping
Library
- add
MaybeDanglingtocore - alloc: specialize
String::extendfor slices of str - implement
Duration::div_duration_{floor,ceil} - implement flatten for
Option<&Option<T>>andOption<&mut Option<T>> - optimized implementation for
uN::{gather,scatter}_bits - rewrite
String::replace_range - stabilize
lazy_get
Cargo
index: Stabilize pubtimereport: new commandcargo report sessionsreport: support --manifest-path incargo report timingsresolver: List features when no close matchtoml: TOML 1.1 parse supportvendor: recursively filter git files in subdirectoriesvendor: unpack from local-registry cache pathbuild-rs: Reduce from 'build' to 'check' where possible- experiment: render timing pipeline in SVG
- patch: Display where the patch was defined in patch-related error messages
Rustdoc
- if line number setting is disabled, do not make line numbers take space
- fix copy code example with line numbers
- fix duplicate Re-exports sections
- fix incorrect type filter name in help popup
Clippy
- fix
assertions_on_constantsfalse positive when there is non-constant value in the condition expr - fix
double_parensfalse positive on macro repetition patterns - fix
obfuscated_if_elsewrongly unmangled macros - fix
result_large_errfalse negative on closures - preserve explicit lifetime information when removing
mut - various fixes for handling of macros
Rust-Analyzer
- add bidirectional messaging proc-macro-srv prototype
- add macro segment completion
- implement configuration to change sub command for test, bench and doctest
- provide a setting to disable showing rename conflicts
- stabilize type mismatch diagnostic 🎉
- indent for
convert_to_guarded_return - fix LSP configuration request handling
- fix parsing of
format_args!("...", keyword=...) - fix type inference when hovering on
_ - reenable fixpoint variance
- do not really expand builtin derives, instead treat them specifically
- pre-allocate some buffers in parsing
- reduce channel lock contention for drop-threads
- prompt the user in VSCode to add the rust-anaylzer componenet to the toolchain file
Rust Compiler Performance Triage
Not a lot of changes this week. Overall result is positive, largely thanks to https://github.com/rust-lang/rust/pull/142881, which makes computing an expensive data structure for JumpThreading MIR optimization lazy.
Triage done by @panstromek. Revision range: e1212ea7..112a2742
Summary:
| (instructions:u) | mean | range | count |
|---|---|---|---|
| Regressions ❌ (primary) |
0.5% | [0.1%, 1.7%] | 11 |
| Regressions ❌ (secondary) |
0.2% | [0.1%, 0.5%] | 6 |
| Improvements ✅ (primary) |
-0.5% | [-1.3%, -0.1%] | 74 |
| Improvements ✅ (secondary) |
-0.6% | [-1.8%, -0.2%] | 71 |
| All ❌✅ (primary) | -0.4% | [-1.3%, 1.7%] | 85 |
2 Regressions, 0 Improvements, 3 Mixed; 1 of them in rollups 37 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.
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
Compiler Team (MCPs only)
- 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
- Give integer literals a sign instead of relying on negation expressions
- Also enable ICE file dumps on stable
- New Tier-3 target proposal:
loongarch64-linux-android
No Items entered Final Comment Period this week for Cargo, Rust, Rust RFCs, Leadership Council, 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
Tracking Issues & PRs
New and Updated RFCs
Upcoming Events
Rusty Events between 2025-12-31 - 2026-01-28 🦀
Virtual
- 2026-01-03 | Virtual (Kampala, UG) | Rust Circle Meetup
- 2026-01-07 | Virtual (Indianapolis, IN, US) | Indy Rust
- 2026-01-08 | Virtual (Charlottesville, VA, US) | Charlottesville Rust Meetup
- 2026-01-08 | Virtual (Nürnberg, DE) | Rust Nuremberg
- 2026-01-13 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-01-13 | Virtual | libp2p Events
- 2026-01-13 | Virtual (Tel Aviv-yafo, IL) | Code Mavens 🦀 - 🐍 - 🐪
- 2026-01-14 | Virtual (Girona, ES) | Rust Girona
- 2026-01-15 | Virtual (Berlin, DE) | Rust Berlin
- 2026-01-20 | Virtual (Washington, DC, US) | Rust DC
- 2026-01-21 | Virtual (Girona, ES) | Rust Girona
- 2026-01-21 | Virtual (Vancouver, BC, CA) | Vancouver Rust
- 2026-01-27 | Virtual (Dallas, TX, US) | Dallas Rust User Meetup
- 2026-01-28 | Virtual (Girona, ES) | Rust Girona
Asia
- 2026-01-07 | Tel Aviv-yafo, IL | Rust 🦀 TLV
- 2026-01-08 | Seoul, KR | Seoul Rust (Programming Language) Meetup
- 2026-01-17 | Delhi, IN | Rust Delhi
Europe
- 2026-01-07 | Amsterdam, NL | Rust Developers Amsterdam Group
- 2026-01-07 | Girona, ES | Rust Girona
- 2026-01-08 | Geneva, CH | Post Tenebras Lab
- 2026-01-14 | Reading, UK | Reading Rust Workshop
- 2026-01-20 | Leipzig, SN, DE | Rust - Modern Systems Programming in Leipzig
- 2026-01-20 | Paris, FR | Rust Paris
North America
- 2026-01-01 | Saint Louis, MO, US | STL Rust
- 2026-01-03 | Boston, MA, US | Boston Rust Meetup
- 2026-01-08 | Lehi, UT, US | Utah Rust
- 2026-01-08 | Mountain View, CA, US | Hacker Dojo
- 2026-01-10 | Boston, MA, US | Boston Rust Meetup
- 2026-01-13 | New York, NY, US | Rust NYC
- 2026-01-13 | Spokane, WA, US | Spokane Rust
- 2026-01-15 | Seattle, WA, US | Seattle Rust User Group
- 2026-01-17 | Boston, MA, US | Boston Rust Meetup
- 2026-01-17 | Herndon, VA, US | NoVaLUG
- 2026-01-20 | San Francisco, CA, US | San Francisco Rust Study Group
- 2026-01-21 | Austin, TX, US | Rust ATX
- 2026-01-22 | Boston, MA, US | Boston Rust Meetup
- 2026-01-24 | Boston, MA, US | Boston Rust Meetup
- 2026-01-28 | Los Angeles, CA, US | Rust Los Angeles
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
what even is time?!?
Thanks to llogiq 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