Skip to content

Commit 778441a

Browse files
Merge pull request #1 from rust-lang/master
Update forked repo
2 parents 78677de + 0aa756d commit 778441a

File tree

6 files changed

+713
-186
lines changed

6 files changed

+713
-186
lines changed

content/2021-11-24-this-week-in-rust.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,7 @@ If you find any errors in this week's issue, [please submit a PR](https://github
3636
* [Merge Queues with Bors](https://kflansburg.com/posts/merge-queues/)
3737
* [Stack-safety for free?](https://hurryabit.github.io/blog/stack-safety-for-free/)
3838
* [Intrusive Smart Pointers + Heap Only Types = 💞](https://blog.schichler.dev/intrusive-smart-pointers-heap-only-types-ckvzj2thw0caoz2s1gpmi1xm8)
39+
* [The Second First Rustc Reading Club](https://mojosd.medium.com/the-second-first-rustc-reading-club-d0d0ffedc92f)
3940
* [Rustc Reading Club, Take 2](http://smallcultfollowing.com/babysteps/blog/2021/11/18/rustc-reading-club-take-2/)
4041
* [Undefined Behavior deserves a better reputation](https://blog.sigplan.org/2021/11/18/undefined-behavior-deserves-a-better-reputation/)
4142
* [Improving overconstrained Rust library APIs](https://dev.to/logrocket/improving-overconstrained-rust-library-apis-47ok)
Lines changed: 243 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,243 @@
1+
Title: This Week in Rust 420
2+
Number: 420
3+
Date: 2021-12-08
4+
Category: This Week in Rust
5+
6+
Hello and welcome to another issue of *This Week in Rust*!
7+
[Rust](http://rust-lang.org) is a programming language empowering everyone to build reliable and efficient software.
8+
This is a weekly summary of its progress and community.
9+
Want something mentioned? Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) or [send us a pull request](https://github.com/rust-lang/this-week-in-rust).
10+
Want to get involved? [We love contributions](https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md).
11+
12+
*This Week in Rust* is openly developed [on GitHub](https://github.com/rust-lang/this-week-in-rust).
13+
If you find any errors in this week's issue, [please submit a PR](https://github.com/rust-lang/this-week-in-rust/pulls).
14+
15+
## Updates from Rust Community
16+
17+
### Official
18+
* [Announcing Rust 1.57.0](https://blog.rust-lang.org/2021/12/02/Rust-1.57.0.html)
19+
20+
### Foundation
21+
* [Love for Rust at re:Invent](https://foundation.rust-lang.org/posts/2021-12-06-love-for-rust-at-reinvent/)
22+
23+
### Project/Tooling Updates
24+
* [Updates in IntelliJ Rust for 2021.3](https://blog.jetbrains.com/rust/2021/12/06/updates-in-intellij-rust-for-2021-3/)
25+
* [Rust Analyzer Changelog #106](https://rust-analyzer.github.io/thisweek/2021/12/06/changelog-106.html)
26+
* [cloud-hypervisor v20.0](https://github.com/cloud-hypervisor/cloud-hypervisor/releases/tag/v20.0)
27+
* [SixtyFPS (GUI crate): Changelog for 5th of December 2021](https://sixtyfps.io/thisweek/2021-12-06.html)
28+
* [This Month in Rust OSDev (November 2021)](https://rust-osdev.com/this-month/2021-11/)
29+
* [GCC Rust Monthly Report #12 November 2021](https://thephilbert.io/2021/12/06/gcc-rust-monthly-report-12-november-2021/)
30+
* [rustc_codegen_gcc: Progress Report #6](https://blog.antoyo.xyz/rustc_codegen_gcc-progress-report-6)
31+
* [Arti 0.0.2 is released: API groundwork, refactoring, config, and optimism](https://forum.torproject.net/t/arti-0-0-2-is-released-api-groundwork-refactoring-config-and-optimism/939)
32+
* [Rust takes a major step forward as Linux's second official language](https://www.zdnet.com/article/rust-takes-a-major-step-forward-as-linuxs-second-official-language/)
33+
* [Updated Rust Code For Linux Kernel Patches Posted](https://www.phoronix.com/scan.php?page=news_item&px=Rust-For-Linux-v2)
34+
* [xmake v2.6.1 released, Switch to Lua5.4 runtime, Support Rust and Cplusplus mixed compilation](https://github.com/xmake-io/xmake/wiki/xmake-v2.6.1-released,-Switch-to-Lua5.4-runtime,-Support-Rust-and-Cplusplus-mixed-compilation)
35+
* [Announcing Sycamore v0.7.0: Client-side hydration + Builder API](https://sycamore-rs.netlify.app/news/announcing-v0.7.0)
36+
* [Nushell 0.41](https://www.nushell.sh/blog/2021-12-07-nushell_0_41.html)
37+
* [DE] [WebAssembly: Wasmer 2.1 ermöglicht das Ausführen von Rust-Projekten im Browser](https://www.heise.de/news/WebAssembly-Wasmer-2-1-ermoeglicht-das-Ausfuehren-von-Rust-Projekten-im-Browser-6283513.html)
38+
* [DE] [Programmiersprache: Rust 1.57 – Don't Panic!](https://www.heise.de/news/Programmiersprache-Rust-1-57-Don-t-Panic-6283665.html)
39+
40+
### Observations/Thoughts
41+
* [Uninit read/write](https://blog.yoshuawuyts.com/uninit-read-write/)
42+
* [Portable and interoperable async Rust](https://www.ncameron.org/blog/portable-and-interoperable-async-rust/)
43+
* [Speedrunning GUI development in Rust](https://aaronerhardt.github.io/blog/posts/gui_speedrun/)
44+
* [My Cryptography Final Project](https://codegito.xyz/2021/12/05/cryptography-final-project/)
45+
* [Case study: Rust programming language community](https://zulip.com/case-studies/rust/)
46+
* [Linear Types Can Help](https://aidancully.blogspot.com/2021/12/linear-types-can-help.html)
47+
* [video] [On Hubris and Humility: developing an OS for robustness in Rust](https://talks.osfc.io/osfc2021/talk/JTWYEH/) [text version](https://cliffle.com/blog/on-hubris-and-humility/)
48+
49+
### Rust Walkthroughs
50+
* [How to encrypt a file in Rust (Using streaming AEAD encryption)](https://kerkour.com/rust-file-encryption)
51+
* [Getting Started with Rust on a Raspberry Pi Pico (Part 3)](https://reltech.substack.com/p/getting-started-with-rust-on-a-raspberry-a88)
52+
* [A better cargo-readme - Issue 0: Humble Beginning](https://scrabsha.github.io/abcr-issue-0/)
53+
* [How to Overriding (Patch) Cargo Dependencies](https://edger.substack.com/p/how-to-overriding-patch-cargo-dependencies)
54+
* [Higher Kinded Types in Rust](https://hugopeters.me/posts/14/)
55+
* [Node to Rust: Day 1 - From nvm to rustup](https://vino.dev/blog/node-to-rust-day-1-rustup/)
56+
* [Creating a Web Page with Actix-Web (Rust)](https://dev.to/michaelin007/creating-a-web-page-with-actix-web-rust--2agd)
57+
* [video] [rg3d - live game development #2](https://www.youtube.com/watch?v=TQaCyC_tGko)
58+
* [video] [1Password Developer Fireside Chat: Ownership & Mutability Patterns in Rust](https://www.youtube.com/watch?v=hJ9IO-nYpjs)
59+
* [video] [series] [Advent of Code in Rust by Lucille Blumire](https://www.youtube.com/channel/UCevTibyeBGT1ybiGzROnsfw)
60+
* [video] [series] [Solving Advent of Code 2021 in Rust by Yoshua Wuyts](https://www.youtube.com/playlist?list=PL2F_NKy2ueKOpAVPl-c3szUXuwB7K9sDq)
61+
* [video] [series] [Writing a Programming Language (in Rust) 9: Implementing Value References](https://www.youtube.com/watch?v=pgD7m02-XnI)
62+
63+
### Miscellaneous
64+
* [Live Coder Jon Gjengset Gets into the Nitty-Gritty of Rust](https://nostarch.com/blog/jon-gjengset-talks-rust)
65+
* [AWS SDK for Rust (Developer Preview)](https://aws.amazon.com/about-aws/whats-new/2021/12/aws-sdk-rust-developer-preview/)
66+
* [BR-pt] [Esta Semana em Rust #419](https://github.com/luisvonmuller/Esta-Semana-Em-Rust/blob/main/%23419.md)
67+
68+
## Crate of the Week
69+
70+
This week's crate is [tap](https://crates.io/crates/tap), a library with extension traits to provide suffix-position pipeline behavior.
71+
72+
Thanks to [David Mason](https://users.rust-lang.org/t/crate-of-the-week/2704/988) for the suggestion!
73+
74+
[Please submit your suggestions and votes for next week][submit_crate]!
75+
76+
[submit_crate]: https://users.rust-lang.org/t/crate-of-the-week/2704
77+
78+
## Call for Participation
79+
80+
Always wanted to contribute to open-source projects but didn't know where to start?
81+
Every week we highlight some tasks from the Rust community for you to pick and get started!
82+
83+
Some of these tasks may also have mentors available, visit the task page for more information.
84+
85+
If you are a Rust project owner and are looking for contributors, please submit tasks [here][guidelines].
86+
87+
[guidelines]: https://users.rust-lang.org/t/twir-call-for-participation/4821
88+
89+
## Updates from the Rust Project
90+
91+
286 pull requests were [merged in the last week][merged]
92+
93+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2021-11-29..2021-12-06
94+
95+
* [Optimize `rustc_lexer`](https://github.com/rust-lang/rust/pull/91393)
96+
* [Add support for LLVM coverage mapping format versions 5 and 6](https://github.com/rust-lang/rust/pull/91207)
97+
* [Add support for riscv64gc-unknown-freebsd](https://github.com/rust-lang/rust/pull/91284)
98+
* [Fix ICE in `check_must_not_suspend_ty()`](https://github.com/rust-lang/rust/pull/91367)
99+
* [Fix ICE when `yield`ing in function returning `impl Trait`](https://github.com/rust-lang/rust/pull/91488)
100+
* [Don't suggest types whose inner type is erroneous](https://github.com/rust-lang/rust/pull/91450)
101+
* [Only show notable traits if both types are the same](https://github.com/rust-lang/rust/pull/91366)
102+
* [Improve diagnostic for missing half of binary operator in `if` condition](https://github.com/rust-lang/rust/pull/91435)
103+
* [Improve error message for `E0659` if the source is not available](https://github.com/rust-lang/rust/pull/91298)
104+
* [Improve error message for incorrect field accesses through raw pointers](https://github.com/rust-lang/rust/pull/91364)
105+
* [Add `Option::inspect` and `Result::{inspect, inspect_err}`](https://github.com/rust-lang/rust/pull/91346)
106+
* [Add a `try_reduce` method to the `Iterator` trait](https://github.com/rust-lang/rust/pull/87054)
107+
* [Add slice `take` methods](https://github.com/rust-lang/rust/pull/88502)
108+
* [Make `array::`{`try_from_fn`, `try_map`} and `Iterator::try_find` generic over `Try`](https://github.com/rust-lang/rust/pull/91286)
109+
* [Introduce `RawVec::reserve_for_push`](https://github.com/rust-lang/rust/pull/91352)
110+
* [Implement `VecDeque::retain_mut`](https://github.com/rust-lang/rust/pull/91215)
111+
* [libc: Define `max_align_t` for wasi](https://github.com/rust-lang/libc/pull/2577)
112+
* [portable-simd: Generic `core::ops` for `Simd<T, _>`](https://github.com/rust-lang/portable-simd/pull/195)
113+
* [cargo: Stabilize `future-incompat-report`](https://github.com/rust-lang/cargo/pull/10165)
114+
* [cargo: Support abbreviating `--release` as `-r`](https://github.com/rust-lang/cargo/pull/10133)
115+
* [clippy: Consider `NonNull` as a pointer type](https://github.com/rust-lang/rust-clippy/pull/8074)
116+
* [clippy: Escape backslash in `single_char_pattern.rs`](https://github.com/rust-lang/rust-clippy/pull/8067)
117+
* [clippy: Fix `any()` not taking reference in `search_is_some` lint](https://github.com/rust-lang/rust-clippy/pull/7463)
118+
* [clippy: Fix some false negatives for `single_char_pattern`](https://github.com/rust-lang/rust-clippy/pull/8077)
119+
* [clippy: Parenthesize blocks in `needless_bool` suggestion](https://github.com/rust-lang/rust-clippy/pull/8066)
120+
* [clippy: Upgrade `map_flatten` to complexity](https://github.com/rust-lang/rust-clippy/pull/8054)
121+
* [rustfmt: Determine when new comment lines are needed for itemized blocks](https://github.com/rust-lang/rustfmt/pull/5097)
122+
123+
### Rust Compiler Performance Triage
124+
125+
A week of mostly rather small changes with many regressions being hard to diagnose. The largest regression comes from the introduction of a new future (desugaring `.await` into a call to `IntoFuture::into_future`). This was deemed acceptable as it only seems to have a negative impact in stress test situations where async/await is used more than one would normally expect. Unfortunately this does mean regressions beat out improvements this week.
126+
127+
Triage done by **@rylev**.
128+
Revision range: [1c0287..ecb65b](https://perf.rust-lang.org/?start=1c0287830e0fb3c4007afea2819ba03766da6e9c&end=ecb65b0e170fc5275870c9d0fba7267a57cf35e5&absolute=false&stat=instructions%3Au)
129+
130+
3 Regressions, 5 Improvements, 5 Mixed; 3 of them in rollups
131+
31 comparisons made in total
132+
133+
[Full report here](https://github.com/rust-lang/rustc-perf/blob/master/triage/2021-12-07.md)
134+
135+
### [Approved RFCs](https://github.com/rust-lang/rfcs/commits/master)
136+
137+
Changes to Rust follow the Rust [RFC (request for comments) process](https://github.com/rust-lang/rfcs#rust-rfcs). These
138+
are the RFCs that were approved for implementation this week:
139+
140+
* [Static async fn in traits](https://github.com/rust-lang/rfcs/commit/69833de7b46a571c6110c9ffc0796aeabde335ff)
141+
142+
### Final Comment Period
143+
144+
Every week [the team](https://www.rust-lang.org/team.html) announces the
145+
'final comment period' for RFCs and key PRs which are reaching a
146+
decision. Express your opinions now.
147+
148+
#### [RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period)
149+
150+
* *No RFCs entered final comment period this week.*
151+
152+
#### [Tracking Issues & PRs](https://github.com/rust-lang/rust/issues?q=is%3Aopen+label%3Afinal-comment-period+sort%3Aupdated-desc)
153+
154+
* [disposition: merge] [Relax priv-in-pub lint on generic bounds and where clauses of trait impls.](https://github.com/rust-lang/rust/pull/90586)
155+
156+
### [New RFCs](https://github.com/rust-lang/rfcs/pulls)
157+
158+
* [RFC: Alignment niches for references types.](https://github.com/rust-lang/rfcs/pull/3204)
159+
160+
## Upcoming Events
161+
162+
Rusty Events between 12/01-12/15 🦀
163+
164+
### Online
165+
166+
* [December 3, 2021 | New York City, NY, US | **Getting started in aerospace with Rust 🦀** | NewSpace NYC](https://www.meetup.com/NewSpace-NYC/events/282320805).
167+
* [December 7, 2021 | Berlin, DE | **Rust Hack and Learn** | Berline.rs, a Berlin-local Rust community](https://berline.rs/2021/12/07/rust-hack-and-learn.html)
168+
* [December 7, 2021 | Buffalo, NY, US | **First Tuesdays: Buffalo Rust User Group** | Buffalo Rust Meetup](https://www.meetup.com/Buffalo-Rust-Meetup/events/281833990/)
169+
* [December 7, 2021 | South Padre Island, TX, US | **Tuesdays - Book #24 - Rust for Rustaceans - Chapter 1** | Los Gatos Reading Group (South Padre Island)](https://www.meetup.com/the-south-padre-island-reading-group/events/281685234/)
170+
* [December 8, 2021 | Los Angeles, CA, US | **Introduction to Photogrammetry with Geordon Worley [Virtual] Dec. 2021** | Rust Los Angeles](https://www.meetup.com/Rust-Los-Angeles/events/281944671)
171+
* [December 8, 2021 | Los Angeles, CA, US | **Rust Computer Vision Project with Geordon Worley** | Rust Los Angeles](https://www.meetup.com/Rust-Los-Angeles/events/281944671/)
172+
* [December 8, 2021 | Stuttgart, DE | **Rust-Meetup** | Rust Community Stuttgart](https://www.meetup.com/Rust-Community-Stuttgart/events/282009864)
173+
* [December 9, 2021 | Columbus, OH, US | **Second Thursdays: Monthly Meetup** | Columbus Rust Society](https://www.meetup.com/columbus-rs/events/dpkhgryccqbmb/)
174+
* [December 9, 2021 | London, UK | **Rust London x TrueLayer Takeover & Christmas Party** | Rust London User Group](https://www.meetup.com/Rust-London-User-Group/events/282343516/)
175+
* [December 9, 2021 | Oslo, NO | **Rust Oslo @ Rebel w/Carol (Nichols || Goulding)**| Rust Oslo](https://www.meetup.com/Rust-Oslo/events/281877640/)
176+
* [December 9, 2021 | San Diego, CA, US | **San Diego Rust December 2021 Tele-Meetup** | San Diego Rust](https://www.meetup.com/San-Diego-Rust/events/282433355)
177+
* [December 10, 2021 | Chicago, IL, US | **8LU Keynote by Eric Smith - Write Your Game in Rust!** | 8th Light University](https://www.meetup.com/8th-light-university/events/282381279)
178+
* [December 11, 2021 | Nairobi, KE | **Rust Catchup 2021** | Rust Nairobi](https://www.meetup.com/Rust-Nairobi/events/282377713/)
179+
* [December 13, 2021 | Eugene, OR, US | **Mondays - Book-Club - Rust Programming Language** | Functional Programming - Eugene](https://www.meetup.com/fp-eug/events/282533185)
180+
* [December 14, 2021 | South Padre Island, TX, US | **Tuesdays - Book #24 - Rust for Rustaceans - Chapter 1 (session 2)** | Los Gatos Reading Group (South Padre Island)](https://www.meetup.com/the-south-padre-island-reading-group/events/282555459/)
181+
* [December 14, 2021 | Seattle, WA, US | **Monthly Meetup** | Seattle Rust Meetup](https://www.meetup.com/Seattle-Rust-Meetup/events/281875277)
182+
183+
### North America
184+
185+
* [December 14, 2021 | Minneapolis, MN, US | **First Meetup** | Minneapolis Rust Meetup Group](https://www.meetup.com/minneapolis-rust-meetup-group/events/282526064/)
186+
* [December 14, 2021 | New York, NY, US | **Presentation by Chelsea E. Manning: Rust on Arduino-style microcontrollers** | Rust NYC](https://www.meetup.com/Rust-NYC/events/282478738/)
187+
188+
189+
### Europe
190+
191+
* [December 3, 2021 | Moscow, RU | **Rust Con** | RustCon.ru](https://rustcon.ru)
192+
* [December 9, 2021 | London, UK | **Rust London x TrueLayer Takeover & Christmas Party** | Rust London User Group](https://www.meetup.com/Rust-London-User-Group/events/282343516/)
193+
194+
If you are running a Rust event please add it to the [calendar] to get
195+
it mentioned here. Please remember to add a link to the event too.
196+
Email the [Rust Community Team][community] for access.
197+
198+
[calendar]: https://www.google.com/calendar/embed?src=apd9vmbc22egenmtu5l6c5jbfc%40group.calendar.google.com
199+
[community]: mailto:[email protected]
200+
201+
# Rust Jobs
202+
203+
**DeepSource**
204+
205+
* [Software Engineer, Static Analysis - Rust (Bangalore, India)](https://careers.deepsource.io/o/software-engineer-static-analysis-rust)
206+
207+
**Clear**
208+
209+
* [Full Stack Developer (Remote)](https://docs.google.com/document/d/1OuG5Ts_6s4eWO6CXGzcbklOweD7qGnOgADnSoPjEa10/edit)
210+
211+
**Pixy**
212+
213+
* [Rust Developer Position](https://www.bigeyestudios.com/job-board)
214+
215+
**Bionaut Labs**
216+
217+
* [Embedded Software Engineer (Senior) (Los Angeles, CA, US)](https://www.indeed.com/viewjob?jk=775772a2587b4a1e)
218+
* [Embedded Software Engineer (Junior) (Los Angeles, CA, US)](https://www.indeed.com/viewjob?jk=030a274941d1f7ac)
219+
220+
**Metawork**
221+
222+
* [Infrastructure Engineer (Remote US)](https://jobs.ashbyhq.com/metawork/51d61a87-d4b8-4ed2-a49b-abb4b2247b30)
223+
* [Platform Engineer (Remote US)](https://jobs.ashbyhq.com/metawork/90575f85-de36-461e-a540-fbee126ad186)
224+
225+
*Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) to get your job offers listed here!*
226+
227+
# Quote of the Week
228+
229+
> v2 of the patch-series "to add support for Rust as a second language to the Linux kernel" was posted to LKML \[..\]
230+
>
231+
> There have been several improvements to the overall Rust support since RFC and v2 described in the linked mail.
232+
233+
[Thorsten Leemhuis on twitter](https://twitter.com/kernellogger/status/1467874273582886921?s=20)
234+
235+
llogiq unanimously suggested and voted that this be our quote for this week.
236+
237+
[Please submit quotes and vote for next week!](https://users.rust-lang.org/t/twir-quote-of-the-week/328)
238+
239+
*This Week in Rust is edited by: [nellshamrell](https://github.com/nellshamrell), [llogiq](https://github.com/llogiq), [cdmistman](https://github.com/cdmistman), [ericseppanen](https://github.com/ericseppanen), [extrawurst](https://github.com/extrawurst), [andrewpollack](https://github.com/andrewpollack), [U007D](https://github.com/U007D), [kolharsam](https://github.com/kolharsam), [joelmarcey](https://github.com/joelmarcey), [mariannegoldin](https://github.com/mariannegoldin).*
240+
241+
*Email list hosting is sponsored by [The Rust Foundation](https://foundation.rust-lang.org/)*
242+
243+
<small>[Discuss on r/rust](https://www.reddit.com/r/rust/comments/rc84ta/this_week_in_rust_420/)</small>

0 commit comments

Comments
 (0)