Skip to content

Commit 99946f8

Browse files
authored
Merge branch 'master' into patch-7
2 parents b8b1aec + 3b60834 commit 99946f8

File tree

1 file changed

+127
-7
lines changed

1 file changed

+127
-7
lines changed

draft/2022-05-25-this-week-in-rust.md

Lines changed: 127 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -45,6 +45,7 @@ and just ask the editors to select the category.
4545
* [Redust: a new Redis client](https://www.reddit.com/r/rust/comments/ux9ry5/redust_a_new_redis_client/)
4646
* [[libblendinfo] Return information from Rust crate to C library](https://www.janwalter.org/jekyll/rust/libblendinfo/2022/05/10/libblendinfo.html)
4747
* [This week in Databend #43: A Modern Cloud Data Warehouse for Everyone](https://weekly.databend.rs/2022-05-25-databend-weekly/)
48+
* [This week in Fluvio #34: the programmable streaming platform](https://www.fluvio.io/news/this-week-in-fluvio-0034/)
4849

4950
### Observations/Thoughts
5051

@@ -72,7 +73,9 @@ and just ask the editors to select the category.
7273

7374
## Crate of the Week
7475

75-
<!-- COTW goes here -->
76+
This week's crate is [rustdoc-types](https://docs.rs/rustdoc-types), a crate with types to deserialize Rustdoc's JSON output.
77+
78+
Thanks to [Nixon Enraght-Moony](https://users.rust-lang.org/t/crate-of-the-week/2704/1061) for the self-ish suggestion.
7679

7780
[Please submit your suggestions and votes for next week][submit_crate]!
7881

@@ -91,21 +94,122 @@ If you are a Rust project owner and are looking for contributors, please submit
9194

9295
## Updates from the Rust Project
9396

94-
<!-- Rust updates go here -->
97+
363 pull requests were [merged in the last week][merged]
98+
99+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2022-05-16..2022-05-23
100+
101+
* [recover when resolution did not resolve lifetimes](https://github.com/rust-lang/rust/pull/97236)
102+
* [add new lint to enforce whitespace after keywords](https://github.com/rust-lang/rust/pull/97179)
103+
* [lint single-use lifetimes during AST resolution](https://github.com/rust-lang/rust/pull/96833)
104+
* [fix misleading "cannot infer type for type parameter" error](https://github.com/rust-lang/rust/pull/97109)
105+
* [improve `u32 as char` cast diagnostic](https://github.com/rust-lang/rust/pull/97169)
106+
* [suggest dereferencing non-lval mutable reference on assignment](https://github.com/rust-lang/rust/pull/94639)
107+
* [add a query for checking whether a function is an intrinsic](https://github.com/rust-lang/rust/pull/97012)
108+
* [types with reachable constructors are reachable](https://github.com/rust-lang/rust/pull/97096)
109+
* [miri: adjust diagnostics assertion so we don't ICE in setup](https://github.com/rust-lang/miri/pull/2141)
110+
* [miri: initial work on Miri permissive-exposed-provenance](https://github.com/rust-lang/miri/pull/2059)
111+
* [miri: make `allow_data_races_*` public and use it during `EnvVars::cleanup`](https://github.com/rust-lang/miri/pull/2142)
112+
* [remove quadratic behaviour from `-Zunpretty=hir-tree`](https://github.com/rust-lang/rust/pull/97223)
113+
* [clean up derived obligation creation](https://github.com/rust-lang/rust/pull/96892)
114+
* [correctly deal with user type ascriptions in pat](https://github.com/rust-lang/rust/pull/96515)
115+
* [rustc\_parse: move AST -> `TokenStream` conversion logic to `rustc_ast`](https://github.com/rust-lang/rust/pull/97251)
116+
* [stabilize `Ipv6Addr::to_ipv4_mapped`](https://github.com/rust-lang/rust/pull/96906)
117+
* [stabilize `array_from_fn`](https://github.com/rust-lang/rust/pull/94119)
118+
* [add convenience byte offset/check align functions to pointers](https://github.com/rust-lang/rust/pull/95643)
119+
* [add functions to un-poison `Mutex` and `RwLock`](https://github.com/rust-lang/rust/pull/96422)
120+
* [improve codegen of `String::retain` method](https://github.com/rust-lang/rust/pull/96605)
121+
* [change `NonNull::as_uninit_*` to take self by value (as opposed to reference), matching primitive pointers](https://github.com/rust-lang/rust/pull/96100)
122+
* [remove unneeded null pointer asserts in `ptr2int` casts](https://github.com/rust-lang/rust/pull/97188)
123+
* [make `ptr::invalid` not the same as a regular `int2ptr` cast](https://github.com/rust-lang/rust/pull/97219)
124+
* [use pointers in `cell::{Ref,RefMut}` to avoid `noalias`](https://github.com/rust-lang/rust/pull/97027)
125+
* [portable SIMD: add `Mask::cast`](https://github.com/rust-lang/portable-simd/pull/251)
126+
* [backtrace: make Miri backtraces work with `#[global_allocator]`](https://github.com/rust-lang/backtrace-rs/pull/462)
127+
* [hashbrown: add function for getting access to map `table: RawTable<(K, V), A>` field](https://github.com/rust-lang/hashbrown/pull/335)
128+
* [cargo: add unstable `rustc-check-cfg` build script output](https://github.com/rust-lang/cargo/pull/10539)
129+
* [cargo: restore proper error for crate not in local reg](https://github.com/rust-lang/cargo/pull/10683)
130+
* [rustdoc: reduce `clean::Type` size](https://github.com/rust-lang/rust/pull/93963)
131+
* [rustdoc: resolve some more doc links early 2](https://github.com/rust-lang/rust/pull/96713)
132+
* [rustfmt: import_granularity: Don't normalize imports with comments](https://github.com/rust-lang/rustfmt/pull/5311)
133+
* [clippy: fix `cmp_owned` on copy types](https://github.com/rust-lang/rust-clippy/pull/8807)
134+
* [clippy: improve "unknown field" error messages](https://github.com/rust-lang/rust-clippy/pull/8823)
135+
* [clippy: lint indirect usages in `disallowed_methods`](https://github.com/rust-lang/rust-clippy/pull/8852)
136+
* [clippy: `dbg_macro` tolerates use of `dbg!` in test items](https://github.com/rust-lang/rust-clippy/pull/8838)
137+
* [clippy: add suggestions to `rc_clone_in_vec_init`](https://github.com/rust-lang/rust-clippy/pull/8814)
138+
* [rust-analyzer: fix inference when pattern matching a tuple field with a wildcard](https://github.com/rust-lang/rust-analyzer/pull/12355)
139+
* [rust-analyzer: generate enum variant assist](https://github.com/rust-lang/rust-analyzer/pull/12334)
140+
* [rust-analyzer: add "cargo clippy" task preset](https://github.com/rust-lang/rust-analyzer/pull/12326)
141+
* [rust-analyzer: implement inlay hint tooltips](https://github.com/rust-lang/rust-analyzer/pull/12285)
142+
* [rust-analyzer: improve docs generation assist](https://github.com/rust-lang/rust-analyzer/pull/12303)
143+
* [rust-analyzer: add a "Add attribute" assist](https://github.com/rust-lang/rust-analyzer/pull/12296)
144+
* [rust-analyzer: don't swallow build script errors](https://github.com/rust-lang/rust-analyzer/pull/12329)
145+
* [rust-analyzer: fix broken async callback in join lines](https://github.com/rust-lang/rust-analyzer/pull/12342)
146+
* [rustup: don't send logging to stdout](https://github.com/rust-lang/rustup/pull/2985)
95147

96148
### Rust Compiler Performance Triage
97149

98-
<!-- Perf results go here -->
150+
Overall a positive week for non-incremental performance (roughly 0.5% faster),
151+
however, some >1% regressions on multiple incremental benchmarks, primarily due to
152+
[#95563](https://github.com/rust-lang/rust/pull/95563), which will hopefully be
153+
investigated in the coming weeks.
154+
155+
Triage done by **@simulacrum**.
156+
Revision range: [7355d971..43d9f3](https://perf.rust-lang.org/?start=7355d971a954ed63293e4191f6677f60c1bc07d9&end=43d9f3859e0204e764161ee085a360274b5f3e9a&absolute=false&stat=instructions%3Au)
157+
158+
2 Regressions, 5 Improvements, 4 Mixed; 0 of them in rollups
159+
57 artifact comparisons made in total
99160

100-
### Call for Testing
161+
[Full report here](https://github.com/rust-lang/rustc-perf/blob/master/triage/2022-05-24.md)
101162

163+
### [Call for Testing](https://github.com/rust-lang/rfcs/issues?q=label%3Acall-for-testing)
102164
An important step for RFC implementation is for people to experiment with the
103165
implementation and give feedback, especially before stabilization. The following
104166
RFCs would benefit from user testing before moving forward:
105167

106-
<!-- Pre-Stabilization RFCs go here -->
168+
* *No RFCs issued a call for testing this week.*
169+
170+
If you are a feature implementer and would like your RFC to appear on the above list, add the new `call-for-testing`
171+
label to your RFC along with a comment providing testing instructions and/or guidance on which aspect(s) of the feature
172+
need testing.
173+
174+
### [Approved RFCs](https://github.com/rust-lang/rfcs/commits/master)
175+
176+
Changes to Rust follow the Rust [RFC (request for comments) process](https://github.com/rust-lang/rfcs#rust-rfcs). These
177+
are the RFCs that were approved for implementation this week:
178+
179+
* *No RFCs were approved this week.*
180+
181+
### Final Comment Period
182+
183+
Every week [the team](https://www.rust-lang.org/team.html) announces the
184+
'final comment period' for RFCs and key PRs which are reaching a
185+
decision. Express your opinions now.
186+
187+
#### [RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period)
188+
189+
* *No RFCs entered Final Comment Period this week.*
190+
191+
#### [Tracking Issues & PRs](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc)
107192

108-
<!-- RFC and FCP sections go here -->
193+
* [disposition: merge] [Modify MIR building to drop repeat expressions with length zero](https://github.com/rust-lang/rust/pull/95953)
194+
* [disposition: merge] [Tracking Issue for `{array, slice}::{from_ref, from_mut}` as const fn](https://github.com/rust-lang/rust/issues/90206)
195+
* [disposition: merge] [Remove migrate borrowck mode](https://github.com/rust-lang/rust/pull/95565)
196+
* [disposition: merge] [Remove label/lifetime shadowing warnings](https://github.com/rust-lang/rust/pull/96296)
197+
* [disposition: merge] [Stabilize the bundle native library modifier](https://github.com/rust-lang/rust/pull/95818)
198+
199+
### [New and Updated RFCs](https://github.com/rust-lang/rfcs/pulls)
200+
201+
* [new] [RFC: Add more support for fallible allocations in Vec](https://github.com/rust-lang/rfcs/pull/3271)
202+
* [notice] [Mention RFC 1201 was superseded by RFC 2972](https://github.com/rust-lang/rfcs/pull/3270)
203+
* [new] [RFC: Add a scalable representation to allow support for scalable vectors](https://github.com/rust-lang/rfcs/pull/3268)
204+
* [new] [Macro Shorthand: Make m!123 identical to m!(123)](https://github.com/rust-lang/rfcs/pull/3267)
205+
206+
--
207+
208+
* *No RFCs issued a call for testing this week.*
209+
* *No RFCs were approved this week.*
210+
* *No RFCs entered Final Comment Period this week.*
211+
* *No Tracking Issues or PRs entered Final Comment Period this week.*
212+
* *No New or Updated RFCs were created this week.*
109213

110214
## Upcoming Events
111215

@@ -186,6 +290,10 @@ Email the [Rust Community Team][community] for access.
186290

187291
# Rust Jobs
188292

293+
**SixtyFPS GmbH**
294+
295+
* [Software Developer for the Slint UI Toolkit (remote/EU)](https://slint-ui.com/careers.html)
296+
189297
<!--
190298
191299
New jobs can be posted here.
@@ -197,12 +305,24 @@ They should be of the form:
197305
* [Job Title (Location)](https://example.com/my-job-link)
198306
199307
-->
308+
**Bionaut Labs**
309+
310+
* [Embedded Rust Engineer - Senior/Principal (Remote US, Los Angeles, CA, US)](https://www.indeed.com/cmp/Bionaut-Labs-1/jobs?jk=2d4ddec4bed66bc1)
311+
312+
313+
**Tempus Ex**
314+
315+
* [Several full-time Rust positions available (San Francisco, CA, US, Atlanta, GA, US, Austin, TX, US, and Remote)](https://tempus-ex.com/careers)
200316

201317
*Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) to get your job offers listed here!*
202318

203319
# Quote of the Week
204320

205-
<!-- QOTW goes here -->
321+
> This is the difference in approaches of the two languages. In C++ if the code is vulnerable, the blame is on the programmer. In Rust if the code is vulnerable, Rust considers it a failure of the language, and takes responsibility to stop even “bad” programmers from writing vulnerable code. I can’t stress enough how awesome it is that I can be a careless fool, and still write perfectly robust highly multi-threaded code that never crashes.
322+
323+
[kornel on lobste.rs](https://lobste.rs/s/wiavtb/rust_critical_retrospective#c_jkfhpb) (with a [caveat from ZiCog](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1244) that Rust does *not* guarantee freedom from all vulnerabilities!)
324+
325+
Thanks to [Brian Kung](https://users.rust-lang.org/t/twir-quote-of-the-week/328/1243) for the suggestion!
206326

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

0 commit comments

Comments
 (0)