Skip to content

Commit 5aa2039

Browse files
authored
C/QotW and notable changes (#6612)
1 parent bc9c940 commit 5aa2039

File tree

1 file changed

+78
-3
lines changed

1 file changed

+78
-3
lines changed

draft/2025-05-07-this-week-in-rust.md

+78-3
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,9 @@ and just ask the editors to select the category.
5656

5757
## Crate of the Week
5858

59-
<!-- COTW goes here -->
59+
This week's crate is [structstruck](https://crates.io/crates/structstruck), a proc-macro crate for enabling nested struct/enum definitions.
60+
61+
Thanks to [Julius Michaelis](https://users.rust-lang.org/t/crate-of-the-week/2704/1433) for the self-suggestion!
6062

6163
[Please submit your suggestions and votes for next week][submit_crate]!
6264

@@ -119,7 +121,74 @@ If you are an event organizer hoping to expand the reach of your event, please s
119121

120122
## Updates from the Rust Project
121123

122-
<!-- Rust updates go here -->
124+
447 pull requests were [merged in the last week][merged]
125+
126+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2025-04-29..2025-05-06
127+
128+
#### Compiler
129+
130+
* [handle paren in macro expand for let-init-else expr](https://github.com/rust-lang/rust/pull/134034)
131+
* [implement or-patterns for pattern types](https://github.com/rust-lang/rust/pull/139909)
132+
* [initial support for dynamically linked crates](https://github.com/rust-lang/rust/pull/134767)
133+
* [mir-opt: execute MatchBranchSimplification after GVN](https://github.com/rust-lang/rust/pull/140115)
134+
* [refactor `rustc_on_unimplemented's` filter parser](https://github.com/rust-lang/rust/pull/140307)
135+
* [perf: optimize the codegen for `Span::from_expansion`](https://github.com/rust-lang/rust/pull/140485)
136+
* [perf: delay checking of `#[rustc_no_implicit_autorefs]` in autoref lint](https://github.com/rust-lang/rust/pull/140406)
137+
* [perf: simplify `LazyAttrTokenStream`](https://github.com/rust-lang/rust/pull/127516)
138+
* [perf: use a closure instead of three chained iterators](https://github.com/rust-lang/rust/pull/140464)
139+
* [transmutability: merge contiguous runs with a common destination](https://github.com/rust-lang/rust/pull/140509)
140+
* [transmutability: uninit transition matches unit byte only](https://github.com/rust-lang/rust/pull/140380)
141+
142+
#### Library
143+
144+
* [avoid redundant WTF-8 checks in `PathBuf`](https://github.com/rust-lang/rust/pull/140159)
145+
* [delegate to inner `vec::IntoIter` from `env::ArgsOs`](https://github.com/rust-lang/rust/pull/139847)
146+
* [implement `Iterator::last` for `vec::IntoIter`](https://github.com/rust-lang/rust/pull/139773)
147+
* [stabilize `ptr::swap_nonoverlapping` in const](https://github.com/rust-lang/rust/pull/137280)
148+
* [stabilize `select_unpredictable`](https://github.com/rust-lang/rust/pull/140550)
149+
* [streamline the `format` macro](https://github.com/rust-lang/rust/pull/140188)
150+
151+
#### Cargo
152+
153+
* [cargo add: suggest similarly named features](https://github.com/rust-lang/cargo/pull/15438)
154+
* [in package-workspace, keep dev-dependencies if they have a version](https://github.com/rust-lang/cargo/pull/15470)
155+
156+
#### Rustdoc
157+
158+
* [fix doctest heuristic for main fn wrapping](https://github.com/rust-lang/rust/pull/140420)
159+
160+
#### Rustfmt
161+
162+
* [also allow bool literals as first item of let chain](https://github.com/rust-lang/rust/pull/140486)
163+
164+
#### Clippy
165+
166+
* [don't warn about unloaded crates](https://github.com/rust-lang/rust-clippy/pull/14733)
167+
* [fix `collapsible_if` false positive on block stmt before expr](https://github.com/rust-lang/rust-clippy/pull/14730)
168+
* [fix `manual_unwrap_or_default` false positive on ref binding](https://github.com/rust-lang/rust-clippy/pull/14731)
169+
* [fix: `manual_slice_fill` false positive on `IndexMut` overload](https://github.com/rust-lang/rust-clippy/pull/14719)
170+
* [fix: `unused_async` false positive on default impl](https://github.com/rust-lang/rust-clippy/pull/14720)
171+
* [gate `collapsible_if let_chains` lints on edition 2024 and MSRV](https://github.com/rust-lang/rust-clippy/pull/14723)
172+
173+
#### Rust-Analyzer
174+
175+
* [add PGO support to install](https://github.com/rust-lang/rust-analyzer/pull/19685)
176+
* [better handle parallelism in cache priming](https://github.com/rust-lang/rust-analyzer/pull/19721)
177+
* [disable fixpoint for variance computation temporarily](https://github.com/rust-lang/rust-analyzer/pull/19739)
178+
* [add an assist to unwrap a type with a generic arg](https://github.com/rust-lang/rust-analyzer/pull/19740)
179+
* [correct assoc ty bound var starting index](https://github.com/rust-lang/rust-analyzer/pull/19732)
180+
* [correct span info for `mir::Operand`](https://github.com/rust-lang/rust-analyzer/pull/19247)
181+
* [don't panic on some weird code](https://github.com/rust-lang/rust-analyzer/pull/19738)
182+
* [fix `move_bounds` assists not working for lifetimes](https://github.com/rust-lang/rust-analyzer/pull/19747)
183+
* [fix incorrect handling of unresolved non-module imports in name resolution](https://github.com/rust-lang/rust-analyzer/pull/19742)
184+
* [fix proc-macro API creating malformed negative literals](https://github.com/rust-lang/rust-analyzer/pull/19746)
185+
* [implement mut to const ptr cast for method resolution](https://github.com/rust-lang/rust-analyzer/pull/19733)
186+
* [improve parser recovery a bit](https://github.com/rust-lang/rust-analyzer/pull/19723)
187+
* [negative nums in `concat!` expansion](https://github.com/rust-lang/rust-analyzer/pull/19434)
188+
* [remove unnecessary token length check for macros in renaming](https://github.com/rust-lang/rust-analyzer/pull/19750)
189+
* [improve the let code snippet](https://github.com/rust-lang/rust-analyzer/pull/19735)
190+
* [render more lifetimes](https://github.com/rust-lang/rust-analyzer/pull/19581)
191+
* [support environment variable `CARGO_MANIFEST_PATH`](https://github.com/rust-lang/rust-analyzer/pull/19751)
123192

124193
### Rust Compiler Performance Triage
125194

@@ -334,7 +403,13 @@ Please see the latest [Who's Hiring thread on r/rust](INSERT_LINK_HERE)
334403

335404
# Quote of the Week
336405

337-
<!-- QOTW goes here -->
406+
> Well, the answer is basically yes. Our firmware is all Rust. Every component of our autonomy stack is Rust. Our app is 50% in Rust. And, our visualization tools are in Rust. Our production tools are in rust. The production QC software, which we ship to China, is in rust. Our internal websites are in rust. It's rust all over. We’ve drank the Rust Kool-Aid. In fact, there is no Python installed on the robots. This is not to dis Python at all, but it’s just simply not there.
407+
>
408+
> We use Python for neural network training. But Python is boxed to that. Everything else is Rust. And, the advantage of using Rust exponentially builds up.
409+
410+
[Vivek Bagaria on filtra.io](https://filtra.io/rust/interviews/matic-apr-25)
411+
412+
Thanks to [Brian Kung](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1683) for the suggestion!
338413

339414
[Please submit quotes and vote for next week!](https://users.rust-lang.org/t/twir-quote-of-the-week/328)
340415

0 commit comments

Comments
 (0)