Skip to content

Commit 5d39a94

Browse files
committed
C/QotW and notable changes
1 parent 9d8308d commit 5d39a94

File tree

1 file changed

+92
-3
lines changed

1 file changed

+92
-3
lines changed

draft/2025-06-18-this-week-in-rust.md

Lines changed: 92 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,9 @@ and just ask the editors to select the category.
5050

5151
## Crate of the Week
5252

53-
<!-- COTW goes here -->
53+
This week's crate is [RobustMQ](https://github.com/robustmq/robustmq), a next-generation, high-performance, multi-protocol message queue.
54+
55+
Thanks to [Yu Liu](https://users.rust-lang.org/t/crate-of-the-week/2704/1443) for the self-suggestion!
5456

5557
[Please submit your suggestions and votes for next week][submit_crate]!
5658

@@ -109,7 +111,86 @@ If you are an event organizer hoping to expand the reach of your event, please s
109111

110112
## Updates from the Rust Project
111113

112-
<!-- Rust updates go here -->
114+
461 pull requests were [merged in the last week][merged]
115+
116+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2025-06-10..2025-06-17
117+
118+
#### Compiler
119+
120+
* [cache `param_env` canonicalization](https://github.com/rust-lang/rust/pull/141451)
121+
* [early linting: avoid redundant calls to `check_id`](https://github.com/rust-lang/rust/pull/142398)
122+
* [move fast reject into inner](https://github.com/rust-lang/rust/pull/142355)
123+
* [use `MixedBitSet` for borrows-in-scope dataflow analysis](https://github.com/rust-lang/rust/pull/142471)
124+
* [miri: add flag to suppress float non-determinism](https://github.com/rust-lang/rust/pull/142337)
125+
* [miri: we can use apfloat's `mul_add` now](https://github.com/rust-lang/rust/pull/142340)
126+
127+
#### Library
128+
129+
* [stabilize `"file_lock"` feature](https://github.com/rust-lang/rust/pull/142125)
130+
* [stabilize keylocker](https://github.com/rust-lang/rust/pull/140766)
131+
* [add `Vec::peek_mut`](https://github.com/rust-lang/rust/pull/142046)
132+
* [added `Clone` implementation for `ChunkBy`](https://github.com/rust-lang/rust/pull/138016)
133+
* [faster `fmt::Display` of 128-bit integers, without unsafe pointer](https://github.com/rust-lang/rust/pull/136594)
134+
* [add `bit_width` for unsigned integer types](https://github.com/rust-lang/rust/pull/142328)
135+
* [remove unneeded lifetime bound from signature of `BTreeSet::extract_if`](https://github.com/rust-lang/rust/pull/142484)
136+
137+
#### Cargo
138+
139+
* [add custom completer for `cargo remove <TAB>`](https://github.com/rust-lang/cargo/pull/15662)
140+
* [highlight the correct words](https://github.com/rust-lang/cargo/pull/15659)
141+
* [refactor: replace InternedString with Cow in IndexPackage](https://github.com/rust-lang/cargo/pull/15559)
142+
143+
#### Rustdoc
144+
145+
* [Give more information into extracted doctest information](https://github.com/rust-lang/rust/pull/141399)
146+
* [rustdoc\_json: reduce allocations](https://github.com/rust-lang/rust/pull/142335)
147+
148+
#### Rustfmt
149+
150+
* [don't try to repair invalid self-imports](https://github.com/rust-lang/rustfmt/pull/6573)
151+
152+
#### Clippy
153+
154+
* [Optimize 3rd heaviest func, (81b → 10m)](https://github.com/rust-lang/rust-clippy/pull/15043)
155+
* [add lint for broken doc links](https://github.com/rust-lang/rust-clippy/pull/13696)
156+
* [docs: add link to `span_lint` in diagnostics.rs](https://github.com/rust-lang/rust-clippy/pull/15065)
157+
* [docs: make `unbuffered_bytes` docs more consistent](https://github.com/rust-lang/rust-clippy/pull/15019)
158+
* [fix FP of `identity_op` when encountering `Default::default()`](https://github.com/rust-lang/rust-clippy/pull/15028)
159+
* [fix `collapsible_else_if` FP on conditionally compiled stmt](https://github.com/rust-lang/rust-clippy/pull/14906)
160+
* [fix `needless_doctest_main` panic when doctest is invalid](https://github.com/rust-lang/rust-clippy/pull/15052)
161+
* [fix `unit_arg` suggests wrongly for `Default::default`](https://github.com/rust-lang/rust-clippy/pull/14881)
162+
* [fix suggestion-causes-error of `manual_swap`](https://github.com/rust-lang/rust-clippy/pull/14978)
163+
* [fixes `manual_flatten` removes the useless if let](https://github.com/rust-lang/rust-clippy/pull/14861)
164+
* [remove `ClippyCtfe` pass](https://github.com/rust-lang/rust-clippy/pull/14712)
165+
* [remove unneeded lifetime](https://github.com/rust-lang/rust-clippy/pull/15040)
166+
167+
#### Rust-Analyzer
168+
169+
* [`ItemTree`'s `ItemVisibilities` has no identity, so deduplicate](https://github.com/rust-lang/rust-analyzer/pull/19980)
170+
* [add support for excluding imports from symbol search](https://github.com/rust-lang/rust-analyzer/pull/19996)
171+
* [cleanup incremental tests and verify query executions](https://github.com/rust-lang/rust-analyzer/pull/20006)
172+
* [add the quickfix for increasing visibility of a private field to the private-field diagnostic](https://github.com/rust-lang/rust-analyzer/pull/19945)
173+
* [in "Fill match arms", allow users to prefer `Self` to the `enum` name when possible](https://github.com/rust-lang/rust-analyzer/pull/19939)
174+
* [insert required parentheses when typing `+` in dyn trait type](https://github.com/rust-lang/rust-analyzer/pull/20015)
175+
* [show what cargo metadata is doing in status](https://github.com/rust-lang/rust-analyzer/pull/20014)
176+
* [copy lockfiles into target directory before invoking `cargo metadata`](https://github.com/rust-lang/rust-analyzer/pull/20018)
177+
* [do not force descend into derives for goto IDE features](https://github.com/rust-lang/rust-analyzer/pull/19981)
178+
* [fix comparison of proc macros](https://github.com/rust-lang/rust-analyzer/pull/19983)
179+
* [fix completion with some attribute macros](https://github.com/rust-lang/rust-analyzer/pull/19942)
180+
* [fix proc macro server handling of strings with minuses](https://github.com/rust-lang/rust-analyzer/pull/19970)
181+
* [hide dyn inlay hints for incomplete `impl`s](https://github.com/rust-lang/rust-analyzer/pull/19973)
182+
* [never make type mismatch diagnostic stable, even when there is a fix](https://github.com/rust-lang/rust-analyzer/pull/20022)
183+
* [reload workspaces when cargo configs change](https://github.com/rust-lang/rust-analyzer/pull/20020)
184+
* [support spans with proc macro servers from before the ast id changes](https://github.com/rust-lang/rust-analyzer/pull/19985)
185+
* [generate annotations for macro defined items if their name is in the input](https://github.com/rust-lang/rust-analyzer/pull/19990)
186+
* [idiomatic salsa use for `enum` variants query](https://github.com/rust-lang/rust-analyzer/pull/20007)
187+
* [improve completions in if / while expression conditions](https://github.com/rust-lang/rust-analyzer/pull/20023)
188+
* [optimize `pub(crate)` and `pub(self)` visibility resolution](https://github.com/rust-lang/rust-analyzer/pull/20009)
189+
* [perf: bring back `EMPTY` item tree deduplication](https://github.com/rust-lang/rust-analyzer/pull/19991)
190+
* [provide better incrementality when items are changed](https://github.com/rust-lang/rust-analyzer/pull/19837)
191+
* [simplify and optimize `ItemTree`](https://github.com/rust-lang/rust-analyzer/pull/19982)
192+
* [turn `BlockId` into a `#[salsa::tracked]`](https://github.com/rust-lang/rust-analyzer/pull/19995)
193+
* [use `ThinVec` in `ItemScope` in a couple places](https://github.com/rust-lang/rust-analyzer/pull/19992)
113194

114195
### Rust Compiler Performance Triage
115196

@@ -326,7 +407,15 @@ Please see the latest [Who's Hiring thread on r/rust](INSERT_LINK_HERE)
326407

327408
# Quote of the Week
328409

329-
<!-- QOTW goes here -->
410+
411+
412+
> But after a few weeks, it compiled and the results surprised us. The code was 10x faster than our carefully tuned Kotlin implementation – despite no attempt to make it faster. To put this in perspective, we had spent years incrementally improving the Kotlin version from 2,000 to 3,000 transactions per second (TPS). The Rust version, written by Java developers who were new to the language, clocked 30,000 TPS.
413+
>
414+
> This was one of those moments that fundamentally shifts your thinking. Suddenly, the couple of weeks spent learning Rust no longer looked like a big deal, when compared with how long it’d have taken us to get the same results on the JVM. We stopped asking, “Should we be using Rust?” and started asking “Where else could Rust help us solve our problems?”
415+
416+
[Dr. Werner Vogels on his blog](https://www.allthingsdistributed.com/2025/05/just-make-it-scale-an-aurora-dsql-story.html)
417+
418+
Thanks to [Brian Kung](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1697) for the suggestion!
330419

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

0 commit comments

Comments
 (0)