Skip to content

Commit c400643

Browse files
Merge pull request #1 from rust-lang/master
Update from original
2 parents 300f0e0 + 48bdd99 commit c400643

10 files changed

+1386
-155
lines changed
Lines changed: 176 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,176 @@
1+
Title: This Week in Rust 364
2+
Number: 364
3+
Date: 2020-11-11
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 systems language pursuing the trifecta: safety, concurrency, and speed.
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+
* [Inside] [Exploring PGO for the Rust compiler](https://blog.rust-lang.org/inside-rust/2020/11/11/exploring-pgo-for-the-rust-compiler)
19+
20+
### Newsletters
21+
* [This Month in Rust OSDev (October 2020)](https://rust-osdev.com/this-month/2020-10/)
22+
* [This Month in Rust GameDev #15 - October 2020](https://rust-gamedev.github.io/posts/newsletter-015/)
23+
24+
### Tooling
25+
* [Rust-Analyzer Changelog #50](https://rust-analyzer.github.io/thisweek/2020/11/09/changelog-50.html)
26+
* [Develop & Debug Your Rust Application Top Of Kubernetes With OKteto](https://okteto.com/blog/getting-started-with-okteto-and-rust/)
27+
28+
### Observations/Thoughts
29+
* [Rust Ray Tracer, an Update (and SIMD)](https://siliconsprawl.com/2020/11/06/simd-ray-tracer.html)
30+
* [Rust emit=asm Can Be Misleading](https://siliconsprawl.com/2020/11/09/rust-emit-asm.html)
31+
* [A survey into static analyzers configurations: Clippy for Rust, part 1](https://medium.com/monocodus/a-survey-into-static-analyzers-configurations-clippy-for-rust-part-1-5de50fd9326)
32+
* [Why Rust is the Future of Game Development](https://thefuntastic.com/blog/why-rust-is-the-future-game-dev?)
33+
* [Rust as a productive high-level language](https://omarabid.com/rust-high-level-language)
34+
* [40 millisecond bug](https://vorner.github.io/2020/11/06/40-ms-bug.html)
35+
* [Postfix macros in Rust](https://gist.github.com/est31/8d0465997ea920c5ba917cbbf80a822d)
36+
* [A Quick Tour of Trade-offs Embedding Data in Rust](https://nickb.dev/blog/a-quick-tour-of-trade-offs-embedding-data-in-rust)
37+
* [Why Developers Love Rust](https://ibraheem.ca/posts/why-devs-love-rust)
38+
39+
### Rust Walkthroughs
40+
* [Make a Language - Part Nine: Function Calls](https://arzg.github.io/lang/9/)
41+
* [Building a Weather Station UI](https://blog.kdubovikov.ml/articles/rust/ui/weather-station-ui)
42+
* [Getting Graphical Output from our Custom RISC-V Operating System in Rust](https://blog.stephenmarz.com/2020/11/11/risc-v-os-using-rust-graphics/)
43+
* [Build your own: GPG](https://andrewhalle.github.io/build-your-own/gpg)
44+
* [Rpi 4 meets Flutter and Rust](https://dev.to/charliefoxtrot/rpi-4-meets-flutter-and-rust-23ma)
45+
* [AWS Lambda + Rust](https://dev.to/rad_val_/aws-lambda-rust-292g)
46+
* [Orchestration in Rust](https://dev.to/elasticrash/orchestration-in-rust-549b)
47+
* [Rocket Tutorial 02: Minimalist API](https://dev.to/davidedelpapa/rocket-tutorial-02-minimalist-api-2kl6)
48+
* [Get simple IO stats using Rust (throughput, ...)](https://dev.to/martichou/get-simple-io-stats-using-rust-throughput-47m4)
49+
* [Type-Safe Discrete Simulation in Rust](https://dev.to/elshize/type-safe-discrete-simulation-in-rust-3n7d)
50+
* [series] [A Gemini Client in Rust](https://dev.to/krowemoh/series/9524)
51+
* [Postfix macros in Rust](https://gist.github.com/est31/8d0465997ea920c5ba917cbbf80a822d)
52+
* [Processing a Series of Items with Iterators in Rust](https://blog.knoldus.com/processing-a-series-of-items-with-iterators-in-rust/)
53+
* [Compilation of Active Directory Logs Using Rust](https://blog.knoldus.com/compilation-of-active-directory-logs-using-rust/)
54+
* [FR] [The Rust Programming Language (translated in French)](https://jimskapt.github.io/rust-book-fr/)
55+
56+
### Project Updates
57+
* [New doc comment handling in rustdoc](https://blog.guillaume-gomez.fr/articles/2020-11-11+New+doc+comment+handling+in+rustdoc)
58+
59+
### Miscellaneous
60+
* [Rust vs Go](https://bitfieldconsulting.com/golang/rust-vs-go)
61+
* [Learn Assembly by Writing Entirely Too Many Brainf*ck Compilers in Rust](https://github.com/pretzelhammer/rust-blog/blob/master/posts/too-many-brainfuck-compilers.md)
62+
63+
# Crate of the Week
64+
65+
This week's crate is [postfix-macros](https://github.com/est31/postfix-macros), a clever hack to allow postfix macros in stable Rust.
66+
67+
Thanks to [Willi Kappler](https://users.rust-lang.org/t/crate-of-the-week/2704/841) for the suggestion!
68+
69+
[Submit your suggestions and votes for next week][submit_crate]!
70+
71+
[submit_crate]: https://users.rust-lang.org/t/crate-of-the-week/2704
72+
73+
# Call for Participation
74+
75+
Always wanted to contribute to open-source projects but didn't know where to start?
76+
Every week we highlight some tasks from the Rust community for you to pick and get started!
77+
78+
Some of these tasks may also have mentors available, visit the task page for more information.
79+
80+
* [time-rs: The call to `localtime_r` may be unsound](https://github.com/time-rs/time/issues/293)
81+
82+
If you are a Rust project owner and are looking for contributors, please submit tasks [here][guidelines].
83+
84+
[guidelines]: https://users.rust-lang.org/t/twir-call-for-participation/4821
85+
86+
# Updates from Rust Core
87+
88+
333 pull requests were [merged in the last week][merged]
89+
90+
[merged]: https://github.com/search?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2020-11-02..2020-11-09
91+
92+
* [Implement destructuring assignment for tuples](https://github.com/rust-lang/rust/pull/78748)
93+
* [reverse binding order in matches to allow the subbinding of copyable fields in bindings after `@`](https://github.com/rust-lang/rust/pull/78638)
94+
* [Fix unreachable sub-branch detection in or-patterns](https://github.com/rust-lang/rust/pull/78167)
95+
* [Transform post order walk to an iterative approach](https://github.com/rust-lang/rust/pull/78607)
96+
* [Compile rustc crates with the initial-exec TLS model](https://github.com/rust-lang/rust/pull/78201)
97+
* [Make some `std::io` functions `const`](https://github.com/rust-lang/rust/pull/78811)
98+
* [Stabilize `Poll::is_ready` and `is_pending` as const](https://github.com/rust-lang/rust/pull/76227)
99+
* [Stabilize `hint::spin_loop`](https://github.com/rust-lang/rust/pull/76097)
100+
* [Simplify the implementation of `Cell::get_mut`](https://github.com/rust-lang/rust/pull/78735)
101+
* [futures: Add `StreamExt::cycle`](https://github.com/rust-lang/futures-rs/pull/2252)
102+
* [futures: Add `TryStreamExt::try_buffered`](https://github.com/rust-lang/futures-rs/pull/2245)
103+
* [cargo: Avoid some extra downloads with new feature resolver](https://github.com/rust-lang/cargo/pull/8823)
104+
105+
## Rust Compiler Performance Triage
106+
107+
* [2020-11-10](https://github.com/rust-lang/rustc-perf/blob/master/triage/2020-11-10.md):
108+
1 Regression, 2 Improvements, 2 mixed
109+
110+
A mixed week with improvements still outweighing regressions. Perhaps the biggest highlight was the move to compiling rustc crates [with the initial-exec TLS model](https://github.com/rust-lang/rust/pull/78201) which results in fewer calls to `_tls_get_addr` and thus faster compile times.
111+
112+
See the [full report](https://github.com/rust-lang/rustc-perf/blob/master/triage/2020-11-10.md) for more.
113+
114+
## Approved RFCs
115+
116+
Changes to Rust follow the Rust [RFC (request for comments) process](https://github.com/rust-lang/rfcs#rust-rfcs). These
117+
are the RFCs that were approved for implementation this week:
118+
119+
*No RFCs were approved this week.*
120+
121+
## Final Comment Period
122+
123+
Every week [the team](https://www.rust-lang.org/team.html) announces the
124+
'final comment period' for RFCs and key PRs which are reaching a
125+
decision. Express your opinions now.
126+
127+
### [RFCs](https://github.com/rust-lang/rfcs/labels/final-comment-period)
128+
129+
*No RFCs are currently in the final comment period.*
130+
131+
### [Tracking Issues & PRs](https://github.com/rust-lang/rust/labels/final-comment-period)
132+
* [disposition: merge] [Stabilize clamp](https://github.com/rust-lang/rust/pull/77872)
133+
* [disposition: merge] [[android] Add support for android's file descriptor ownership tagging to libstd.](https://github.com/rust-lang/rust/pull/74860)
134+
* [disposition: merge] [Implement Error for &(impl Error)](https://github.com/rust-lang/rust/pull/75180)
135+
* [disposition: merge] [Add checking for no_mangle to unsafe_code lint](https://github.com/rust-lang/rust/pull/72209)
136+
* [disposition: merge] [Tracking issue for methods converting `bool` to `Option<T>`](https://github.com/rust-lang/rust/issues/64260)
137+
138+
## New RFCs
139+
* [User/ardavis/checked cfg](https://github.com/rust-lang/rfcs/pull/3013)
140+
* [add const-ub RFC](https://github.com/rust-lang/rfcs/pull/3016)
141+
* [Adds `must_not_await_lint` RFC](https://github.com/rust-lang/rfcs/pull/3014)
142+
143+
# Upcoming Events
144+
145+
### Online
146+
* [November 12, Berlin, DE - Rust Hack and Learn - Berline.rs](https://www.meetup.com/opentechschool-berlin/events/txcprrybcpbqb/)
147+
* [November 12, Washington, DC, US - Mid-month Rustful—How oso built a runtime reflection system for Rust - Rust DC](https://www.meetup.com/RustDC/events/273813659)
148+
* [November 12, Lehi, UT, US - WASM, Rust, and the State of Async/Await - Utah Rust](https://www.meetup.com/utah-rust/events/273757338/)
149+
* [November 18, Vancouver, BC, CA - Rust Study/Hack/Hang-out night - Vancouver Rust](https://www.meetup.com/Vancouver-Rust/events/npqfbsybcpbxb/)
150+
* [November 24, Dallas, TX, US - Last Tuesday - Dallas Rust](https://www.meetup.com/Dallas-Rust/events/jqxqwrybcpbgc/)
151+
152+
If you are running a Rust event please add it to the [calendar] to get
153+
it mentioned here. Please remember to add a link to the event too.
154+
Email the [Rust Community Team][community] for access.
155+
156+
[calendar]: https://www.google.com/calendar/embed?src=apd9vmbc22egenmtu5l6c5jbfc%40group.calendar.google.com
157+
[community]: mailto:[email protected]
158+
159+
# Rust Jobs
160+
161+
* [2 Backend engineers, Core Banking at Truelayer (Milan, IT)](https://apply.workable.com/truelayer/j/BD023B950B), [also contact Luca Palmieri](https://twitter.com/algo_luca/status/1324763252560191490)
162+
163+
*Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) to get your job offers listed here!*
164+
# Quote of the Week
165+
166+
> There are no bad programmers, only insufficiently advanced compilers
167+
168+
[Esteban Kuber on twitter](https://twitter.com/ekuber/status/1319476290395664384)
169+
170+
Thanks to [Nixon Enraght-Moony](https://users.rust-lang.org/t/twir-quote-of-the-week/328/957) for the suggestion.
171+
172+
[Please submit quotes and vote for next week!](https://users.rust-lang.org/t/twir-quote-of-the-week/328)
173+
174+
*This Week in Rust is edited by: [nellshamrell](https://github.com/nellshamrell), [llogiq](https://github.com/llogiq), and [cdmistman](https://github.com/cdmistman).*
175+
176+
<small>[Discuss on r/rust](https://www.reddit.com/r/rust/comments/jslo80/this_week_in_rust_364/)</small>

0 commit comments

Comments
 (0)