Hello and welcome to another issue of This Week in Rust! Rust is a systems language pursuing the trifecta: safety, concurrency, and speed. This is a weekly summary of its progress and community. Want something mentioned? Tweet us at @ThisWeekInRust or send us a pull request. Want to get involved? We love contributions.
Updates from Rust Community
News & Blog Posts
- Why Rust closures are (somewhat) hard.
- Rust pattern: Iterating an over a
- FlatBuffers adds support for Rust.
- RPCS3 and Dolphin on macOS using gfx-portability.
- Learning generics in Rust.
- Feasible functors in Rust.
- Programming Servo: A generic “worker event-loop”.
- Serde deserialize This or That into u64.
- This Week in Rust and WebAssembly 7.
- The Embedded WG newsletter 10.
Crate of the Week
Call for Participation
Always wanted to contribute to open-source projects but didn't know where to start? Every week we highlight some tasks from the Rust community for you to pick and get started!
Some of these tasks may also have mentors available, visit the task page for more information.
If you are a Rust project owner and are looking for contributors, please submit tasks here.
Updates from Rust Core
109 pull requests were merged in the last week
- enable ThinLTO with incremental compilation
- build LLVM with ThinLTO enabled (2nd attempt)
- update LLVM submodule (mainly WASM improvements)
- ADD more Cortex-R targets
- change the default linker of the ARM Cortex-M targets to rust-lld
- begin preparation for Rust 2018
- fix promotion stability hole in old borrowck
- Miri engine cleanup
- Miri refactor: Final round
- use partial but correct vtable layout
- NLL: experiment with inverting liveness
- fix NLL ICEs
- set rustfix auto-applicability for a few lints
Set} instead of the default
- various small diagnostic and code clean up
- save-analysis: record info for the types in
steps_betweenfor 16-bit systems
- reduce number of syscalls in
- add more const int ops
impl PartialEq for TryFromIntError
- add rust-gdbgui script
cfg(rustdoc)when rustdoc is running on a crate
- rustbuild: distribute libLLVM.so with rustc
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
- RFC 2471: Add lint warning for inner function marked as
- RFC 2521: Unify
Final Comment Period
Every week the team announces the 'final comment period' for RFCs and key PRs which are reaching a decision. Express your opinions now.
- [disposition: merge] Amend RFC 2175 to support for loops and leading vert.
- [disposition: merge] Rustfmt stability.
- [disposition: postpone] Add futures and task system to libcore.
- [disposition: merge] Tracking issue for a minimal subset of RFC 911, const fn.
- [disposition: merge] Add a implementation of
- [disposition: merge] Add trim_start, trim_end etc.; deprecate trim_left, trim_right, etc. in future.
- [disposition: merge] Add
- [disposition: merge] Tracking issue for RFC 2070: stable mechanism to specify the behavior of panic! in no-std applications .
- [disposition: merge] Tracking issue for the
- Or patterns, i.e
Foo(Bar(x) | Baz(x)).
- Write References for Direct and Partial Initialization using &out T and &uninit T.
- Sep 11. Rust Community Content Subteam Meeting at channel #rust-community.
- Sep 12. Rust Community Team Meeting in Discord.
- Sep 12. Rust Events Team Meeting in Telegram.
- Sep 19. Rust Community Team Meeting in Discord.
- Sep 7. Darmstadt, DE - Rhein Main Rust Meetup / Mentoring Round.
- Sep 18. Amsterdam, NL - Amsterdam Rust Meetup - Concurrency fundamentals, Tokio & WebAssembly.
- Sep 18. Rapperswil-Jona, CH - Rapperswil-Jona, Zürichsee Meetup - Looking for a speaker.
- Sep 19. Berlin, DE - Berlin Rust Hack and Learn.
- Sep 20. Cambridge, GB - Cambridge Rust Meetup.
- Sep 9. Mountain View, US - Rust Dev in Mountain View!.
- Sep 10. Seattle, US - Seattle Rust Meetup.
- Sep 12. Boulder, US - Rust Boulder/Denver Monthly Meeting.
- Sep 13. Columbus, US - Columbus Rust Society - Monthly Meeting.
- Sep 13. Arlington, US - Rust DC - Mid-month Rustful.
- Sep 13. San Diego, US - San Diego Rust September Meetup - WASM, "failure" library, or ???.
- Sep 13. Utah, US - Utah Rust monthly meetup.
- Sep 16. Mountain View, US - Rust Dev in Mountain View!.
- Sep 19. Vancouver, CA - Vancouver Rust meetup - Study/Hack/Hang-out.
- Oct 19 & 20. Ann Arbor, US - Rust Belt Rust 2018.
- Rust Developer at Parity, Berlin.
- Rust Backend Engineer at Kraken, Remote.
- Rust Lead Engineer at Setter, Torronto.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Quote of the Week
Zeitgeist of Rust: developing load bearing software that will survive us.
Thanks to Matthieu M for the suggestion!