Skip to content

Commit 73f0b87

Browse files
committed
C/QotW and notable changes
1 parent 2858c06 commit 73f0b87

File tree

1 file changed

+113
-3
lines changed

1 file changed

+113
-3
lines changed

draft/2025-01-15-this-week-in-rust.md

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

4848
## Crate of the Week
4949

50-
<!-- COTW goes here -->
50+
This week's crate is [vidyut](https://github.com/ambuda-org/vidyut), a Sanskrit toolkit containing functionality about meter, segmentation, inflections, etc.
51+
52+
Thanks to [Arun Prasad](https://users.rust-lang.org/t/crate-of-the-week/2704/1387) for the self-suggestion!
5153

5254
[Please submit your suggestions and votes for next week][submit_crate]!
5355

@@ -106,7 +108,111 @@ If you are an event organizer hoping to expand the reach of your event, please s
106108

107109
## Updates from the Rust Project
108110

109-
<!-- Rust updates go here -->
111+
469 pull requests were [merged in the last week][merged]
112+
113+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2025-01-07..2025-01-14
114+
115+
* [add new `{x86_64,i686}-win7-windows-gnu` targets](https://github.com/rust-lang/rust/pull/134609)
116+
* [arm: add unstable soft-float target feature](https://github.com/rust-lang/rust/pull/135203)
117+
* [`-Zrandomize-layout` harder. `Foo<T> != Foo<U>`](https://github.com/rust-lang/rust/pull/133088)
118+
* [`best_blame_constraint`: Blame better constraints when the region graph has cycles from invariance or `'static`](https://github.com/rust-lang/rust/pull/133858)
119+
* [`mir_transform`: implement `#[rustc_force_inline]`](https://github.com/rust-lang/rust/pull/134082)
120+
* [`run_make_support`: add `#![warn(unreachable_pub)]`](https://github.com/rust-lang/rust/pull/135411)
121+
* [account for identity substituted items in symbol mangling](https://github.com/rust-lang/rust/pull/135261)
122+
* [add `-Zmin-function-alignment`](https://github.com/rust-lang/rust/pull/134030)
123+
* [add `default_field_values` entry to unstable book](https://github.com/rust-lang/rust/pull/134855)
124+
* [add a list of symbols for stable standard library crates](https://github.com/rust-lang/rust/pull/135247)
125+
* [add an `InstSimplify` for repetitive array expressions](https://github.com/rust-lang/rust/pull/135274)
126+
* [add inherent versions of `MaybeUninit` methods for slices](https://github.com/rust-lang/rust/pull/129259)
127+
* [add missing provenance APIs on `NonNull`](https://github.com/rust-lang/rust/pull/135242)
128+
* [assert that `Instance::try_resolve` is only used on body-like things](https://github.com/rust-lang/rust/pull/135426)
129+
* [avoid ICE: Account for `for<'a>` types when checking for non-structural type in constant as pattern](https://github.com/rust-lang/rust/pull/134776)
130+
* [avoid replacing the definition of `CURRENT_RUSTC_VERSION`](https://github.com/rust-lang/rust/pull/135173)
131+
* [cleanup `suggest_binding_for_closure_capture_self` diag in borrowck](https://github.com/rust-lang/rust/pull/135364)
132+
* [condvar: implement `wait_timeout` for targets without threads](https://github.com/rust-lang/rust/pull/134389)
133+
* [convert typeck constraints in location-sensitive polonius](https://github.com/rust-lang/rust/pull/134920)
134+
* [depth limit const eval query](https://github.com/rust-lang/rust/pull/135167)
135+
* [detect `mut arg: &Ty` meant to be `arg: &mut Ty` and provide structured suggestion](https://github.com/rust-lang/rust/pull/134977)
136+
* [do not ICE when encountering predicates from other items in method error reporting](https://github.com/rust-lang/rust/pull/135083)
137+
* [eagerly collect mono items for non-generic closures](https://github.com/rust-lang/rust/pull/135314)
138+
* [ensure that we don't try to access fields on a non-struct pattern type](https://github.com/rust-lang/rust/pull/135222)
139+
* [exhaustively handle expressions in patterns](https://github.com/rust-lang/rust/pull/134228)
140+
* [fix ICE with references to infinite structs in consts](https://github.com/rust-lang/rust/pull/135464)
141+
* [fix cycle error only occurring with -Zdump-mir](https://github.com/rust-lang/rust/pull/134498)
142+
* [fix handling of ZST in win64 ABI on windows-msvc targets](https://github.com/rust-lang/rust/pull/135204)
143+
* [implement `const Destruct` in old solver](https://github.com/rust-lang/rust/pull/134875)
144+
* [lower Guard Patterns to HIR](https://github.com/rust-lang/rust/pull/134989)
145+
* [make (unstable API) `UniqueRc` invariant for soundness](https://github.com/rust-lang/rust/pull/135379)
146+
* [make MIR cleanup for functions with impossible predicates into a real MIR pass](https://github.com/rust-lang/rust/pull/135377)
147+
* [make `lit_to_mir_constant` and `lit_to_const` infallible](https://github.com/rust-lang/rust/pull/135195)
148+
* [normalize each signature input/output in `typeck_with_fallback` with its own span](https://github.com/rust-lang/rust/pull/134745)
149+
* [remove a bunch of diagnostic stashing that doesn't do anything](https://github.com/rust-lang/rust/pull/135378)
150+
* [remove allocations from case-insensitive comparison to keywords](https://github.com/rust-lang/rust/pull/135371)
151+
* [remove special-casing for argument patterns in MIR typeck (attempt to fix perf regression of #133858)](https://github.com/rust-lang/rust/pull/135273)
152+
* [reserve x18 register for aarch64 wrs vxworks target](https://github.com/rust-lang/rust/pull/135184)
153+
* [rm unnecessary `OpaqueTypeDecl` wrapper](https://github.com/rust-lang/rust/pull/135440)
154+
* [suggest Replacing Comma with Semicolon in Incorrect Repeat Expressions](https://github.com/rust-lang/rust/pull/128110)
155+
* [support target specific `optimized-compiler-builtins`](https://github.com/rust-lang/rust/pull/135326)
156+
* [unify conditional-const error reporting with non-const error reporting](https://github.com/rust-lang/rust/pull/134732)
157+
* [use a post-monomorphization typing env when mangling components that come from impls](https://github.com/rust-lang/rust/pull/135149)
158+
* [use llvm.memset.p0i8.* to initialize all same-bytes arrays](https://github.com/rust-lang/rust/pull/135258)
159+
* [used pthread name functions returning result for FreeBSD and DragonFly](https://github.com/rust-lang/rust/pull/132607)
160+
* [warn about broken simd not only on structs but also enums and unions when we didn't opt in to it](https://github.com/rust-lang/rust/pull/135219)
161+
* [implement trait upcasting](https://github.com/rust-lang/chalk/pull/821)
162+
* [mir-opt: GVN some more transmute cases](https://github.com/rust-lang/rust/pull/133324)
163+
* [miri: add FreeBSD maintainer; test all of Solarish](https://github.com/rust-lang/miri/pull/4135)
164+
* [miri: added Android to `epoll` and `eventfd` test targets](https://github.com/rust-lang/miri/pull/4137)
165+
* [miri: adjust the way we build miri-script in RA, to fix proc-macros](https://github.com/rust-lang/miri/pull/4134)
166+
* [miri: illumos: added epoll and eventfd](https://github.com/rust-lang/miri/pull/4136)
167+
* [miri: supported fioclex for ioctl on macos](https://github.com/rust-lang/miri/pull/4133)
168+
* [miri: switched FreeBSD to `pthread_setname_np`](https://github.com/rust-lang/miri/pull/4132)
169+
* [miri: use `deref_poiner_as` instead of `deref_pointer`](https://github.com/rust-lang/miri/pull/4138)
170+
* [`proc_macro`: Use `ToTokens` trait in `quote` macro](https://github.com/rust-lang/rust/pull/134693)
171+
* [add `#[inline]` to `copy_from_slice`](https://github.com/rust-lang/rust/pull/135384)
172+
* [impl `String::into_chars`](https://github.com/rust-lang/rust/pull/133057)
173+
* [initial fs module for uefi](https://github.com/rust-lang/rust/pull/135324)
174+
* [hashbrown: added Allocator template argument for `rustc_iter`](https://github.com/rust-lang/hashbrown/pull/605)
175+
* [account for optimization levels other than numbers](https://github.com/rust-lang/compiler-builtins/pull/743)
176+
* [cargo: schemas: Fix 'metadata' JSON Schema](https://github.com/rust-lang/cargo/pull/15033)
177+
* [cargo: schemas: Fix the `[lints]` JSON Schema](https://github.com/rust-lang/cargo/pull/15035)
178+
* [cargo: perf: cargo-package: match certain path prefix with pathspec](https://github.com/rust-lang/cargo/pull/14997)
179+
* [cargo: fix: emit warnings as warnings when learning rust target info](https://github.com/rust-lang/cargo/pull/15036)
180+
* [cargo: make `"C"` explicit in `extern "C"`](https://github.com/rust-lang/cargo/pull/15034)
181+
* [cargo: setup cargo environment for `cargo rustc --print`](https://github.com/rust-lang/cargo/pull/15026)
182+
* [cargo: simplify SourceID Ord/Eq](https://github.com/rust-lang/cargo/pull/14980)
183+
* [rustdoc-json: include items in stripped modules in `Crate::paths`](https://github.com/rust-lang/rust/pull/135348)
184+
* [rustdoc: use import stability marker in display](https://github.com/rust-lang/rust/pull/135352)
185+
* [rustdoc: use stable paths as preferred canonical paths](https://github.com/rust-lang/rust/pull/135171)
186+
* [rustfmt: drop nightly-gating of the `--style-edition` flag registration](https://github.com/rust-lang/rust/pull/135200)
187+
* [clippy: add new lint `unneeded_struct_pattern`](https://github.com/rust-lang/rust-clippy/pull/13465)
188+
* [clippy: auto-fix `slow_vector_initialization` in some cases](https://github.com/rust-lang/rust-clippy/pull/13947)
189+
* [clippy: do not intersect spans coming from different contexts](https://github.com/rust-lang/rust-clippy/pull/13942)
190+
* [clippy: do not look for significant drop inside `.await` expansion](https://github.com/rust-lang/rust-clippy/pull/13985)
191+
* [clippy: do not propose to elide lifetimes if this causes an ambiguity](https://github.com/rust-lang/rust-clippy/pull/13929)
192+
* [clippy: do not remove identity mapping if mandatory mutability would be lost](https://github.com/rust-lang/rust-clippy/pull/13905)
193+
* [clippy: do not trigger `redundant_pub_crate` in external macros](https://github.com/rust-lang/rust-clippy/pull/13952)
194+
* [clippy: don't emit machine applicable `map_flatten` lint if there are code comments](https://github.com/rust-lang/rust-clippy/pull/13940)
195+
* [clippy: don't suggest to use `cloned` for `Cow` in `unnecessary_to_owned`](https://github.com/rust-lang/rust-clippy/pull/13853)
196+
* [clippy: fix type suggestion for `manual_is_ascii_check`](https://github.com/rust-lang/rust-clippy/pull/13916)
197+
* [clippy: improve `needless_as_bytes` to also detect `str::bytes()`](https://github.com/rust-lang/rust-clippy/pull/13972)
198+
* [clippy: new lint: `manual_ok_err`](https://github.com/rust-lang/rust-clippy/pull/13740)
199+
* [clippy: remove unneeded parentheses in `unnecessary_map_or` lint output](https://github.com/rust-lang/rust-clippy/pull/13932)
200+
* [rust-analyzer: add a new and improved syntax tree view](https://github.com/rust-lang/rust-analyzer/pull/18813)
201+
* [rust-analyzer: add config setting which allows adding additional include paths to the VFS](https://github.com/rust-lang/rust-analyzer/pull/18880)
202+
* [rust-analyzer: re-implement rust string highlighting via tool attribute](https://github.com/rust-lang/rust-analyzer/pull/18906)
203+
* [rust-analyzer: fix JSON project `PackageRoot` buildfile inclusion](https://github.com/rust-lang/rust-analyzer/pull/18866)
204+
* [rust-analyzer: do not compute `prettify_macro_expansion()` unless the "Inline macro" assist has actually been invoked](https://github.com/rust-lang/rust-analyzer/pull/18900)
205+
* [rust-analyzer: do not offer completions within macro strings](https://github.com/rust-lang/rust-analyzer/pull/18832)
206+
* [rust-analyzer: fix `env`/`option_env` macro check disregarding `macro_rules` definitions](https://github.com/rust-lang/rust-analyzer/pull/18884)
207+
* [rust-analyzer: fix `ref` text edit for binding mode hints](https://github.com/rust-lang/rust-analyzer/pull/18920)
208+
* [rust-analyzer: fix a bug with missing binding in MBE](https://github.com/rust-lang/rust-analyzer/pull/18877)
209+
* [rust-analyzer: fix actual token lookup in completion's `expand()`](https://github.com/rust-lang/rust-analyzer/pull/18889)
210+
* [rust-analyzer: fix another issue with fixup reversing](https://github.com/rust-lang/rust-analyzer/pull/18899)
211+
* [rust-analyzer: fix diagnostics not clearing between flychecks](https://github.com/rust-lang/rust-analyzer/pull/18864)
212+
* [rust-analyzer: make edition per-token, not per-file](https://github.com/rust-lang/rust-analyzer/pull/18861)
213+
* [rust-analyzer: implement `#[rust_analyzer::skip]` for bodies](https://github.com/rust-lang/rust-analyzer/pull/18907)
214+
* [rust-analyzer: implement implicit sized bound inlay hints](https://github.com/rust-lang/rust-analyzer/pull/18903)
215+
* [rust-analyzer: improve hover module path rendering](https://github.com/rust-lang/rust-analyzer/pull/18904)
110216

111217
### Rust Compiler Performance Triage
112218

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

296402
# Quote of the Week
297403

298-
<!-- QOTW goes here -->
404+
> This is a wonderful unsoundness and I am incredibly excited about it :3
405+
406+
[lcnr on github](https://github.com/rust-lang/rust/issues/135011#issuecomment-2573248261)
407+
408+
Thanks to [Christoph Grenz](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1650) for the suggestion!
299409

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

0 commit comments

Comments
 (0)