Skip to content

Commit daca8ad

Browse files
authored
Merge branch 'master' into add-from-socials
2 parents 1f405ba + 3906075 commit daca8ad

File tree

1 file changed

+110
-65
lines changed

1 file changed

+110
-65
lines changed

draft/2025-11-12-this-week-in-rust.md

Lines changed: 110 additions & 65 deletions
Original file line numberDiff line numberDiff line change
@@ -38,37 +38,50 @@ and just ask the editors to select the category.
3838
-->
3939

4040
### Official
41+
* [Announcing Rust 1.91.1](https://blog.rust-lang.org/2025/11/10/Rust-1.91.1/)
4142

4243
### Foundation
4344

4445
### Newsletters
4546
* [The Embedded Rustacean Issue #58](https://www.theembeddedrustacean.com/p/the-embedded-rustacean-issue-58)
47+
* [This Month in Rust OSDev: October 2025](https://rust-osdev.com/this-month/2025-10/)
4648

4749
### Project/Tooling Updates
4850
* [channels-console - real-time monitoring, metrics and logs for Rust channels](https://github.com/pawurb/channels-console)
4951
* [qstr: Cache-efficient, stack-allocated string types](https://github.com/tindzk/qstr)
52+
* [Announcing Magika 1.0: now faster, smarter, and rebuilt in Rust](https://opensource.googleblog.com/2025/11/announcing-magika-10-now-faster-smarter.html?m=1)
5053
* [Tokuin 0.1.2: Load Testing LLMs from the Terminal](https://noos.blog/posts/tokuin-token-tooling-for-llm-builders/)
5154
* [semver-query: semantic versioning data query tool](https://github.com/zak905/semver-query)
5255
* [SeaORM 2.0: Strongly-Typed Column](https://www.sea-ql.org/blog/2025-11-11-sea-orm-2.0/)
5356
* [LLMs: nanoGPT model in Rust - arrowspace v0.22.0 released](https://www.tuned.org.uk/posts/009_llms_nanogpt_model_in_rust)
5457
* [InterpN: Fast Interpolation](https://jlogan.dev/blog/2025/11/10/2025-11-10-interpn-fast-interpolation/)
58+
* [Tako 0.5.0 road to v1.0.0](https://rust-dd.com/post/tako-v-0-5-0-road-to-v-1-0-0)
5559

5660
### Observations/Thoughts
61+
* [Just call clone (or alias)](https://smallcultfollowing.com/babysteps/blog/2025/11/10/just-call-clone/)
62+
* [Engineering a Rust optimization quiz](https://fasterthanli.me/articles/engineering-a-rust-optimization-quiz)
63+
* [video] [A Quick Start to Rust Lang](https://www.youtube.com/watch?v=fTXtdbt1PFA)
64+
* [video] [Rust & JavaScript - Jakob Meier - Rust Zürisee November 2024](https://www.youtube.com/watch?v=MEHi7FZjSYw)
5765
* [audio] [Netstack.FM Episode 13 – Inside Ping Proxies with Joseph Dye](https://netstack.fm/#episode-13)
66+
* [Rust vs. Python: Finding the right balance between speed and simplicity](https://blog.jetbrains.com/rust/2025/11/10/rust-vs-python-finding-the-right-balance-between-speed-and-simplicity/)
5867

5968
### Rust Walkthroughs
69+
* [Reproachfully Presenting Resilient Recursive Descent Parsing](https://thunderseethe.dev/posts/parser-base/)
6070
* [Rust Hashing Cheat Sheet](https://bd103.github.io/blog/2025-11-10-rust-hashing-cheat-sheet/)
6171

6272
### Research
6373

6474
### Miscellaneous
75+
* [Memory Safety for Skeptics](https://queue.acm.org/detail.cfm?id=3773095)
6576

6677

6778
## Crate of the Week
6879

69-
<!-- COTW goes here -->
80+
This week's crate is [automesh](https://docs.rs/automesh), a crate for high-performance automatic mesh generation in Rust.
7081

71-
[Please submit your suggestions and votes for next week][submit_crate]!
82+
Thanks to [Michael R. Buche](https://users.rust-lang.org/t/crate-of-the-week/2704/1485) for the self-suggestion!
83+
84+
[Please submit your suggestions and votes for neMichael R. Buchext week][submit_crate]!
7285

7386
[submit_crate]: https://users.rust-lang.org/t/crate-of-the-week/2704
7487

@@ -80,33 +93,11 @@ If you are a feature implementer and would like your RFC to appear in this list,
8093
`call-for-testing` label to your RFC along with a comment providing testing instructions and/or
8194
guidance on which aspect(s) of the feature need testing.
8295

83-
<!-- If there are new CfT items this week, include:
84-
85-
[Repo Name](Repo URL)
86-
* [<Feature name>](<Feature URL>)
87-
* [Testing steps](<Testing Steps URL>)
88-
89-
- and make note in the item so the authors know to remove the `call-for-testing` label:
90-
This RFC will appear in the **Call for Testing** section of the next issue (#) of This Week in Rust (TWiR).
91-
You may remove the `call-for-testing` label. Please feel free to leave the `call-for-testing` label in place if you would like this RFC to appear again in another issue of TWiR.
92-
93-
- where `Repo Name` and `Repo URL` are one of:
94-
[Rust](https://github.com/rust-lang/rust/labels/call-for-testing),
95-
[Rust language RFCs](https://github.com/rust-lang/rfcs/issues?q=label%3Acall-for-testing),
96-
[Cargo](https://github.com/rust-lang/cargo/labels/call-for-testing) or
97-
[Rustup](https://github.com/rust-lang/rustup/labels/call-for-testing)
98-
99-
- and `Testing steps` points directly to the procedures the item wants users to exercise.
100-
101-
- For all `Repo Names` with no new CfT items this week: use (removing the repos for which new
102-
CfT items did appear, of course)
103-
10496
* *No calls for testing were issued this week by
10597
[Rust](https://github.com/rust-lang/rust/labels/call-for-testing),
106-
[Rust language RFCs](https://github.com/rust-lang/rfcs/issues?q=label%3Acall-for-testing),
107-
[Cargo](https://github.com/rust-lang/cargo/labels/call-for-testing) or
98+
[Cargo](https://github.com/rust-lang/cargo/labels/call-for-testing),
99+
[Rust language RFCs](https://github.com/rust-lang/rfcs/issues?q=label%3Acall-for-testing) or
108100
[Rustup](https://github.com/rust-lang/rustup/labels/call-for-testing).*
109-
-->
110101

111102
[Let us know](https://github.com/rust-lang/this-week-in-rust/issues) if you would like your feature to be tracked as a part of this list.
112103

@@ -150,65 +141,115 @@ If you are an event organizer hoping to expand the reach of your event, please s
150141

151142
## Updates from the Rust Project
152143

153-
<!-- Rust updates go here -->
144+
409 pull requests were [merged in the last week][merged]
145+
146+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2025-11-04..2025-11-11
147+
148+
#### Compiler
149+
* [add LLVM realtime sanitizer](https://github.com/rust-lang/rust/pull/147935)
150+
* [don't completely reset `HeadUsages`](https://github.com/rust-lang/rust/pull/148649)
151+
* [use annotate-snippets by default on nightly](https://github.com/rust-lang/rust/pull/148188)
152+
* [implement SIMD funnel shifts in const-eval/Miri](https://github.com/rust-lang/rust/pull/147534)
153+
* [recover `[T: N]` as `[T; N]`](https://github.com/rust-lang/rust/pull/148680)
154+
155+
#### Library
156+
* [add Allocator proxy impls for Box, Rc, and Arc](https://github.com/rust-lang/rust/pull/148539)
157+
* [add `extend_front` to VecDeque with specialization like extend](https://github.com/rust-lang/rust/pull/146861)
158+
* [add alignment parameter to `simd_masked_{load,store}`](https://github.com/rust-lang/rust/pull/147355)
159+
* [constify `ControlFlow` methods with unstable bounds](https://github.com/rust-lang/rust/pull/148285)
160+
* [constify `ControlFlow` methods without unstable bounds](https://github.com/rust-lang/rust/pull/148248)
161+
* [constify result unwrap unchecked](https://github.com/rust-lang/rust/pull/148333)
162+
* [optimize path components iteration on platforms that don't have prefixes](https://github.com/rust-lang/rust/pull/148084)
163+
* [stabilize `as_array` in `[_]` and `*const [_]`; stabilise `as_mut_array` in `[_]` and `*mut [_]`](https://github.com/rust-lang/rust/pull/147540)
164+
* [stabilize `vec_deque_pop_if`](https://github.com/rust-lang/rust/pull/145992)
165+
* [stabilize s390x `vector` target feature and `is_s390x_feature_detected!` macro](https://github.com/rust-lang/rust/pull/145656)
166+
* [stop specializing on `Copy`](https://github.com/rust-lang/rust/pull/135634)
167+
168+
#### Cargo
169+
* [`cli`: Refer to commands, not subcommands](https://github.com/rust-lang/cargo/pull/16226)
170+
* [`completions`: don't wrap completion item help in parenthesis](https://github.com/rust-lang/cargo/pull/16215)
171+
* [add native completions for `--package` on various commands](https://github.com/rust-lang/cargo/pull/16210)
172+
173+
#### Rustdoc
174+
* [search: remove broken index special case](https://github.com/rust-lang/rust/pull/148563)
175+
* [properly highlight shebang, frontmatter & weak keywords in source code pages and code blocks](https://github.com/rust-lang/rust/pull/148230)
176+
177+
#### Clippy
178+
* [perf: `manual_is_power_of_two`: perform the `is_integer_literal` check first](https://github.com/rust-lang/rust-clippy/pull/16050)
179+
* [consider type conversion that won't overflow](https://github.com/rust-lang/rust-clippy/pull/15950)
180+
* [don't flag `cfg(test)` as multiple inherent impl](https://github.com/rust-lang/rust-clippy/pull/16041)
181+
* [fix `match_single_binding` suggesting wrongly inside tuple](https://github.com/rust-lang/rust-clippy/pull/15539)
182+
* [fix `missing_asserts_for_indexing` changing `assert_eq` to `assert`](https://github.com/rust-lang/rust-clippy/pull/16040)
183+
* [fix `missing_inline_in_public_items` failing to fulfill `expect` in `--test` build](https://github.com/rust-lang/rust-clippy/pull/15320)
184+
* [fix `mod_module_files` false positive for tests in workspaces](https://github.com/rust-lang/rust-clippy/pull/16048)
185+
* [fix `nonminimal_bool` wrongly unmangled terms](https://github.com/rust-lang/rust-clippy/pull/16017)
186+
* [fix `useless_let_if_seq` false negative when `if` is in the last expr of block](https://github.com/rust-lang/rust-clippy/pull/16063)
187+
188+
#### Rust-Analyzer
189+
* [support rename after adding loop label](https://github.com/rust-lang/rust-analyzer/pull/20985)
190+
* [add block on postfix `.const` completion](https://github.com/rust-lang/rust-analyzer/pull/21003)
191+
* [fix panicking while resolving callable sigs for `AsyncFnMut`](https://github.com/rust-lang/rust-analyzer/pull/20971)
192+
* [handle guards in `replace_if_let_with_match`](https://github.com/rust-lang/rust-analyzer/pull/20542)
193+
* [handle method calls in `apply_demorgan`](https://github.com/rust-lang/rust-analyzer/pull/20973)
194+
* [parse `impl ! {}`](https://github.com/rust-lang/rust-analyzer/pull/20972)
195+
* [move safe computation out of unsafe block](https://github.com/rust-lang/rust-analyzer/pull/20977)
196+
* [perf: only populate public items in dependency symbol index](https://github.com/rust-lang/rust-analyzer/pull/20997)
197+
* [perf: reduce memory usage of symbol index](https://github.com/rust-lang/rust-analyzer/pull/20994)
154198

155199
### Rust Compiler Performance Triage
156200

157-
<!-- Perf results go here -->
201+
Mostly quiet week, with the majority of changes coming from the standard
202+
library work towards removal of Copy specialization
203+
([#135634](https://github.com/rust-lang/rust/pull/135634)).
204+
205+
Triage done by **@simulacrum**.
206+
Revision range: [35ebdf9b..055d0d6a](https://perf.rust-lang.org/?start=35ebdf9ba1414456dfe1cb6a6b13ebae80e99734&end=055d0d6aaf937cc11b3d2a5b5725972723b7f3c6&absolute=false&stat=instructions%3Au)
207+
208+
3 Regressions, 1 Improvement, 7 Mixed; 3 of them in rollups
209+
37 artifact comparisons made in total
210+
211+
[Full report here](https://github.com/rust-lang/rustc-perf/blob/master/triage/2025/2025-11-10.md)
158212

159213
### [Approved RFCs](https://github.com/rust-lang/rfcs/commits/master)
160214

161215
Changes to Rust follow the Rust [RFC (request for comments) process](https://github.com/rust-lang/rfcs#rust-rfcs). These
162216
are the RFCs that were approved for implementation this week:
163217

164-
<!-- Use either
165-
* [Item title](Item URL)
166-
- or
167-
* *No RFCs were approved this week.*
168-
-->
218+
* [Pass pointers to `const` in assembly](https://github.com/rust-lang/rfcs/pull/3848)
169219

170220
### Final Comment Period
171221

172222
Every week, [the team](https://www.rust-lang.org/team.html) announces the 'final comment period' for RFCs and key PRs
173223
which are reaching a decision. Express your opinions now.
174224

175225
#### Tracking Issues & PRs
176-
<!-- Either remove the group from the "No Items Entered Final Comment Period this week for" section
177-
and add the item(s) which entered Final comment period:
178-
##### [Group](Group URL)
179-
* [Item title](Item URL)
180-
- for `disposition-merge` `final-comment-period` items, or
181-
* [disposition: postpone]
182-
- for `disposition-postpone` `final-comment-period` items, or
183-
* [disposition: close]
184-
- for `disposition-close` `final-comment-period` items,
185-
* [disposition: unspecified]
186-
- when `disposition` is unspecified or ensure the group is a part of the
187-
"No Items Entered Final Comment Period this week for" section
226+
##### [Rust](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc)
227+
* [Warn against calls which mutates an interior mutable const -item](https://github.com/rust-lang/rust/pull/148407)
228+
* [parser/lexer: bump to Unicode 17, use faster unicode-ident](https://github.com/rust-lang/rust/pull/148321)
229+
* [const-eval: fix and re-enable pointer fragment support](https://github.com/rust-lang/rust/pull/148259)
230+
* [Replace OffsetOf by an actual sum of calls to intrinsic.](https://github.com/rust-lang/rust/pull/148151)
231+
* [Stabilize `asm_cfg`](https://github.com/rust-lang/rust/pull/147736)
232+
* [Stabilize `-Zremap-path-scope`](https://github.com/rust-lang/rust/pull/147611)
233+
* [error out when `repr(align)` exceeds COFF limit](https://github.com/rust-lang/rust/pull/142638)
234+
235+
[Compiler Team](https://github.com/rust-lang/compiler-team/issues?q=label%3Amajor-change%20%20label%3Afinal-comment-period) [(MCPs only)](https://forge.rust-lang.org/compiler/mcp.html)
236+
* [target tier 3 support for hexagon-unknown-qurt](https://github.com/rust-lang/compiler-team/issues/919)
237+
* [Proposal for a dedicated test suite for the parallel frontend](https://github.com/rust-lang/compiler-team/issues/906)
238+
* [Proposal for Adapt Stack Protector for Rust](https://github.com/rust-lang/compiler-team/issues/841)
239+
* [Give integer literals a sign instead of relying on negation expressions](https://github.com/rust-lang/compiler-team/issues/835)
240+
188241
*No Items entered Final Comment Period this week for
189-
[Rust RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period),
190-
[Cargo](https://github.com/rust-lang/cargo/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc),
191-
[Compiler Team](https://github.com/rust-lang/compiler-team/issues?q=label%3Amajor-change%20%20label%3Afinal-comment-period) [(MCPs only)](https://forge.rust-lang.org/compiler/mcp.html),
192-
[Language Team](https://github.com/rust-lang/lang-team/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc+),
193-
[Language Reference](https://github.com/rust-lang/reference/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc),
194-
[Leadership Council](https://github.com/rust-lang/leadership-council/issues?q=state%3Aopen%20label%3Afinal-comment-period) or
195-
[Unsafe Code Guidelines](https://github.com/rust-lang/unsafe-code-guidelines/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc).*
242+
[Rust RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period),
243+
[Cargo](https://github.com/rust-lang/cargo/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc),
244+
[Language Team](https://github.com/rust-lang/lang-team/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc+),
245+
[Language Reference](https://github.com/rust-lang/reference/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc),
246+
[Leadership Council](https://github.com/rust-lang/leadership-council/issues?q=state%3Aopen%20label%3Afinal-comment-period) or
247+
[Unsafe Code Guidelines](https://github.com/rust-lang/unsafe-code-guidelines/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc).*
196248

197249
Let us know if you would like your PRs, Tracking Issues or RFCs to be tracked as a part of this list.
198-
-->
199250

200251
#### [New and Updated RFCs](https://github.com/rust-lang/rfcs/pulls)
201-
<!-- Use either
202-
* [Item title](Item URL)
203-
- for new items, or
204-
* [updated] [Item title](Item URL)
205-
- for updated items, or
206-
* *No New or Updated RFCs were created this week.*
207-
-->
208-
209-
<!-- Sample commit message
210-
Update CFT, FCP, MCP and RFC sections for TWiR-xxx
211-
-->
252+
* [RFC: Introduce `DerefInto` and `DerefMutInto` for RAII access](https://github.com/rust-lang/rfcs/pull/3880)
212253

213254
## Upcoming Events
214255

@@ -355,7 +396,11 @@ Please see the latest [Who's Hiring thread on r/rust](INSERT_LINK_HERE)
355396

356397
# Quote of the Week
357398

358-
<!-- QOTW goes here -->
399+
> Making your `unsafe` very tiny is sort of like putting caution markings *on* the lethally strong robot arm with no proximity sensors, rather than on the door into the protective cage.
400+
401+
[Stephan Sokolow on lobste.rs](https://lobste.rs/c/0vkdmo)
402+
403+
Thanks to [llogiq](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1727) for the suggestion!
359404

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

0 commit comments

Comments
 (0)