Skip to content

Commit ab7ecdd

Browse files
authored
Merge branch 'master' into c-git-patch-2024-11-06
2 parents 3f046f7 + cc7618e commit ab7ecdd

File tree

4 files changed

+685
-70
lines changed

4 files changed

+685
-70
lines changed

content/2024-10-30-this-week-in-rust.md

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

6565
## Crate of the Week
6666

67-
<!-- COTW goes here -->
67+
This week's crate is [tower-http-client](https://github.com/alekseysidorov/tower-http-client), a library of middlewares and various utilities for HTTP-clients.
68+
69+
Thanks to [Aleksey Sidorov](https://users.rust-lang.org/t/crate-of-the-week/2704/1366) for the self-suggestion!
6870

6971
[Please submit your suggestions and votes for next week][submit_crate]!
7072

@@ -116,7 +118,112 @@ If you are an event organizer hoping to expand the reach of your event, please s
116118

117119
## Updates from the Rust Project
118120

119-
<!-- Rust updates go here -->
121+
447 pull requests were [merged in the last week][merged]
122+
123+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2024-10-22..2024-10-29
124+
125+
* [add wasm32v1-none target](https://github.com/rust-lang/rust/pull/131487)
126+
* [AIX: use /dev/urandom for random implementation](https://github.com/rust-lang/rust/pull/132048)
127+
* [`rustc_target`: Add pauth-lr aarch64 target feature](https://github.com/rust-lang/rust/pull/131900)
128+
* [add a note for `?` on a `impl Future<Output = Result<..>>` in sync function](https://github.com/rust-lang/rust/pull/131549)
129+
* [add support for `~const` item bounds](https://github.com/rust-lang/rust/pull/132118)
130+
* [consider param-env candidates even if they have errors](https://github.com/rust-lang/rust/pull/132084)
131+
* [const stability checks v2](https://github.com/rust-lang/rust/pull/131349)
132+
* [coverage: consolidate creation of covmap/covfun records](https://github.com/rust-lang/rust/pull/132124)
133+
* [coverage: don't rely on the custom traversal to find enclosing loops](https://github.com/rust-lang/rust/pull/132091)
134+
* [coverage: emit LLVM intrinsics using the normal helper method](https://github.com/rust-lang/rust/pull/132125)
135+
* [coverage: pass coverage mappings to LLVM as separate structs](https://github.com/rust-lang/rust/pull/131956)
136+
* [deeply normalize `TypeTrace` when reporting type error in new solver](https://github.com/rust-lang/rust/pull/131756)
137+
* [deny calls to non-`#[const_trait]` methods in MIR constck](https://github.com/rust-lang/rust/pull/132169)
138+
* [do not remove `.cargo` directory](https://github.com/rust-lang/rust/pull/132054)
139+
* [don't stage-off to previous compiler when CI rustc is available](https://github.com/rust-lang/rust/pull/132006)
140+
* [emit future-incompatibility lint when calling/declaring functions with vectors that require missing target feature](https://github.com/rust-lang/rust/pull/127731)
141+
* [enable LSX feature for LoongArch Linux targets](https://github.com/rust-lang/rust/pull/132140)
142+
* [error on alignments greater than `isize::MAX`](https://github.com/rust-lang/rust/pull/131633)
143+
* [expand: stop using artificial `ast::Item` for macros loaded from metadata](https://github.com/rust-lang/rust/pull/132192)
144+
* [fixup Windows verbatim paths when used with the `include!` macro](https://github.com/rust-lang/rust/pull/125205)
145+
* [hashStable for `rustc_feature::Features`: stop hashing compile-time constant](https://github.com/rust-lang/rust/pull/132076)
146+
* [lint against getting pointers from immediately dropped temporaries](https://github.com/rust-lang/rust/pull/128985)
147+
* [move `cmp_in_dominator_order` out of graph dominator computation](https://github.com/rust-lang/rust/pull/132022)
148+
* [pass constness with span into `lower_poly_trait_ref`](https://github.com/rust-lang/rust/pull/132227)
149+
* [prevent overflowing `enum` cast from ICEing](https://github.com/rust-lang/rust/pull/131909)
150+
* [refactor change detection for rustdoc and download-rustc](https://github.com/rust-lang/rust/pull/131043)
151+
* [replace an FTP link in comments with an equivalent HTTPS link](https://github.com/rust-lang/rust/pull/132096)
152+
* [replace some LLVMRust wrappers with calls to the LLVM C API](https://github.com/rust-lang/rust/pull/132167)
153+
* [represent `hir::TraitBoundModifiers` as distinct parts in HIR](https://github.com/rust-lang/rust/pull/131982)
154+
* [represent trait constness as a distinct predicate](https://github.com/rust-lang/rust/pull/131985)
155+
* [round negative signed integer towards zero in `iN::midpoint`](https://github.com/rust-lang/rust/pull/132191)
156+
* [simplify force-recompile logic for "library"](https://github.com/rust-lang/rust/pull/132215)
157+
* [simplify param handling in `resolve_bound_vars`](https://github.com/rust-lang/rust/pull/132043)
158+
* [taking a raw ref (`&raw (const|mut)`) of a deref of pointer (`*ptr`) is always safe](https://github.com/rust-lang/rust/pull/129248)
159+
* [use `Enabled{Lang,Lib}Feature` instead of n-tuples](https://github.com/rust-lang/rust/pull/132114)
160+
* [validate args are correct for `UnevaluatedConst`, `ExistentialTraitRef`/`ExistentialProjection`](https://github.com/rust-lang/rust/pull/131049)
161+
* [x86 target features: make pclmulqdq imply sse2](https://github.com/rust-lang/rust/pull/132174)
162+
* [x86-32 float return for 'Rust' ABI: treat all float types consistently](https://github.com/rust-lang/rust/pull/131871)
163+
* [miri: add option for generating coverage reports](https://github.com/rust-lang/miri/pull/3954)
164+
* [miri: android: added syscall support](https://github.com/rust-lang/miri/pull/3992)
165+
* [miri: clear `eval_libc` errors from unix shims](https://github.com/rust-lang/miri/pull/3984)
166+
* [miri: consistently use io error handlers](https://github.com/rust-lang/miri/pull/3990)
167+
* [miri: fix error returned from `readdir_r` when isolation is enabled, and uses of `raw_os_error`](https://github.com/rust-lang/miri/pull/3995)
168+
* [miri: implement LLVM x86 vpclmulqdq intrinsics](https://github.com/rust-lang/miri/pull/3987)
169+
* [miri: indicate more explicitly where we close host file/dir handles](https://github.com/rust-lang/miri/pull/3993)
170+
* [(Big performance change) Do not run lints that cannot emit](https://github.com/rust-lang/rust/pull/125116)
171+
* [optimize `Rc<T>::default`](https://github.com/rust-lang/rust/pull/132031)
172+
* [specialize `read_exact` and `read_buf_exact` for `VecDeque`](https://github.com/rust-lang/rust/pull/132039)
173+
* [stabilize `isqrt` feature](https://github.com/rust-lang/rust/pull/131391)
174+
* [stabilize shorter-tail-lifetimes](https://github.com/rust-lang/rust/pull/131983)
175+
* [support `char::is_digit` in const contexts](https://github.com/rust-lang/rust/pull/132242)
176+
* [remove the `Arc rt::init` allocation for thread info](https://github.com/rust-lang/rust/pull/123550)
177+
* [provide a default impl for `Pattern::as_utf8_pattern`](https://github.com/rust-lang/rust/pull/132113)
178+
* [vectorized `SliceContains`](https://github.com/rust-lang/rust/pull/130991)
179+
* [avoid using imports in `thread_local_inner!` in static](https://github.com/rust-lang/rust/pull/132101)
180+
* [better default capacity for `str::replace`](https://github.com/rust-lang/rust/pull/131929)
181+
* [musl: use `posix_spawn` if a directory change was requested](https://github.com/rust-lang/rust/pull/131851)
182+
* [cargo resolver: Make room for v3 resolver](https://github.com/rust-lang/cargo/pull/14725)
183+
* [cargo complete: Include descriptions in zsh](https://github.com/rust-lang/cargo/pull/14726)
184+
* [cargo env: remove unnecessary clones](https://github.com/rust-lang/cargo/pull/14730)
185+
* [cargo: fingerprint: avoid unnecessary fopen calls](https://github.com/rust-lang/cargo/pull/14728)
186+
* [cargo: added unstable-schema generation for Cargo.toml](https://github.com/rust-lang/cargo/pull/14683)
187+
* [cargo: deprecate `cargo verify-project`](https://github.com/rust-lang/cargo/pull/14736)
188+
* [cargo fix: add source replacement info when no matching package found](https://github.com/rust-lang/cargo/pull/14715)
189+
* [cargo fix: trace `config [env]` table in dep-info](https://github.com/rust-lang/cargo/pull/14701)
190+
* [cargo test: add fixes in the sat resolver](https://github.com/rust-lang/cargo/pull/14707)
191+
* [rustdoc: Do not consider nested functions as main function even if named `main` in doctests](https://github.com/rust-lang/rust/pull/132105)
192+
* [rustdoc: extend `fake_variadic` to "wrapped" tuples](https://github.com/rust-lang/rust/pull/132115)
193+
* [rustdoc: hash assets at rustdoc build time](https://github.com/rust-lang/rust/pull/131951)
194+
* [allow type-based search on foreign functions](https://github.com/rust-lang/rust/pull/132123)
195+
* [clippy: `borrow_deref_ref`: do not trigger on `&raw` references](https://github.com/rust-lang/rust-clippy/pull/13600)
196+
* [clippy: don't trigger `const_is_empty` for inline const assertions](https://github.com/rust-lang/rust-clippy/pull/13558)
197+
* [clippy: fire `large_const_arrays` for computed array lengths](https://github.com/rust-lang/rust-clippy/pull/13620)
198+
* [clippy: fix incorrect suggestion for `!(a >= b) as i32 == c`](https://github.com/rust-lang/rust-clippy/pull/13338)
199+
* [clippy: fix not working lint anchor (generation and filtering)](https://github.com/rust-lang/rust-clippy/pull/13588)
200+
* [clippy: remove unnecessary `filter_map` usages](https://github.com/rust-lang/rust-clippy/pull/13548)
201+
* [clippy: stop linting `unused_io_amount` in io traits](https://github.com/rust-lang/rust-clippy/pull/13605)
202+
* [rust-analyzer: add text edits to more inlay hints](https://github.com/rust-lang/rust-analyzer/pull/18376)
203+
* [rust-analyzer: implement diagnostics pull model](https://github.com/rust-lang/rust-analyzer/pull/18404)
204+
* [rust-analyzer: render docs from aliased type when type has no docs](https://github.com/rust-lang/rust-analyzer/pull/18349)
205+
* [rust-analyzer: resolve range patterns to their structs](https://github.com/rust-lang/rust-analyzer/pull/18370)
206+
* [rust-analyzer: split `macro-error` diagnostic so users can ignore only parts of it](https://github.com/rust-lang/rust-analyzer/pull/18418)
207+
* [rust-analyzer: support `cfg(true)` and `cfg(false)`](https://github.com/rust-lang/rust-analyzer/pull/18420)
208+
* [rust-analyzer: fix diagnostic enable config being ignored](https://github.com/rust-lang/rust-analyzer/pull/18399)
209+
* [rust-analyzer: fix dyn incompatible hint message](https://github.com/rust-lang/rust-analyzer/pull/18379)
210+
* [rust-analyzer: fix formatting on welcome page, read only paths setting example](https://github.com/rust-lang/rust-analyzer/pull/18407)
211+
* [rust-analyzer: add missing cfg flags for `core` crate](https://github.com/rust-lang/rust-analyzer/pull/18395)
212+
* [rust-analyzer: allow public re-export of `extern crate` import](https://github.com/rust-lang/rust-analyzer/pull/18413)
213+
* [rust-analyzer: correctly handle `#""` in edition `<2024`](https://github.com/rust-lang/rust-analyzer/pull/18417)
214+
* [rust-analyzer: don't compute diagnostics for non local files](https://github.com/rust-lang/rust-analyzer/pull/18408)
215+
* [rust-analyzer: fix checking for `false labelDetailsSupport` value](https://github.com/rust-lang/rust-analyzer/pull/18388)
216+
* [rust-analyzer: fix incorrect parsing of use bounds](https://github.com/rust-lang/rust-analyzer/pull/18371)
217+
* [rust-analyzer: handle missing time offsets gracefully](https://github.com/rust-lang/rust-analyzer/pull/18386)
218+
* [rust-analyzer: implement mixed site hygiene](https://github.com/rust-lang/rust-analyzer/pull/18264)
219+
* [rust-analyzer: nail destructuring assignment once and for all](https://github.com/rust-lang/rust-analyzer/pull/18254)
220+
* [rust-analyzer: prevent public re-export of private item](https://github.com/rust-lang/rust-analyzer/pull/18390)
221+
* [rust-analyzer: properly resolve prelude paths inside modules inside blocks](https://github.com/rust-lang/rust-analyzer/pull/18422)
222+
* [rust-analyzer: put leading `|` in patterns under `OrPat`](https://github.com/rust-lang/rust-analyzer/pull/18419)
223+
* [rust-analyzer: turn "Remove `dbg!`" into a quick fix for better prioritization](https://github.com/rust-lang/rust-analyzer/pull/18415)
224+
* [rust-analyzer: move text-edit into ide-db](https://github.com/rust-lang/rust-analyzer/pull/18421)
225+
* [rust-analyzer: only construct a resolver in macro descension when needed](https://github.com/rust-lang/rust-analyzer/pull/18409)
226+
* [rust-analyzer: swap query call order in `file_item_tree_query`](https://github.com/rust-lang/rust-analyzer/pull/18392)
120227

121228
### Rust Compiler Performance Triage
122229

@@ -307,7 +414,10 @@ Please see the latest [Who's Hiring thread on r/rust](https://www.reddit.com/r/r
307414

308415
# Quote of the Week
309416

310-
<!-- QOTW goes here -->
417+
> An earnest effort to pursue \[[P1179R1](https://wg21.link/p1179r1)\] as a Lifetime TS\[[P3465R0](https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2024/p3465r0.pdf)\] will compromise on C++’s outdated and unworkable core principles and adopt mechanisms more like Rust’s. In the compiler business this is called *carcinization*: a tendency of non-crab organisms to evolve crab-like features.
418+
[Sean Baxter on circle-lang.org](https://www.circle-lang.org/draft-profiles.html#carcinization)
419+
420+
Thanks to [Collin Richards](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1627) for the suggestion!
311421

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

0 commit comments

Comments
 (0)