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
- ripgrep 0.10.0 released (PCRE2 and multi-line support).
- rustfmt, compiled to wasm, in a webpage.
- Rust faster – SIMD edition.
- 2019 Strategy for rustc and the RLS.
- Adventures in Rust: Futures and Tokio.
- From Rust to beyond, episode 4: The C galaxy. An end-to-end example, includes cbindgen and clang.
- Parallelizing PNG, part 5: choosing Rust for mtpng.
- Tower Web - Expanding the middleware stack.
- Beware the rust cache on Travis (or why you should use it with care).
- RustFest Rome CFP is open and supporter tickets available.
- Videos from RustConf 2018.
- Rust Embedded WG newsletter 11.
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
137 pull requests were merged in the last week
- introduce Custom Test Frameworks
- ThinLTO: don't keep files open after mmaping them
- rustc: prepare the
atomicsfeature for wasm
- if- and while-let-chains, take 2 - edition changes
- resolve: relax shadowing restrictions on macro-expanded macros
- fix incorrect outer function type parameter message
is_non_exhaustiveconfusion between structs and enums
precompute_borrows_out_of_scopefor fewer hash table lookups
- make loop detector only consider reachable memory
- miri engine: make sure we do not copy unsized data
- optimize miri checking of integer array/slices
- NLL: do not propagate closure requirements if we can prove them locally
- NLL: teach SCC about
- implement Unpin for Box, Rc, and Arc
- add trim_start, trim_end etc.; deprecate trim_left, trim_right, etc. in future
- allow to check if sync::Once is already initialized
- rustdoc: show trait impl docs
- rustbuild: tweak LLVM distribution layout
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
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] Deny the
overflowing_literalslint for the 2018 edition.
- [disposition: merge] Lint reasons.
- [disposition: merge] Simpler alternative
- [disposition: postpone] Add futures and task system to libcore.
- [disposition: postpone] Imply Option.
- [disposition: close] Support long path names on all Windows versions.
- [disposition: merge] Allow for opting out of ThinLTO and clean up LTO related cli flag handling..
- [disposition: merge] Move std::os::raw::c_void into libcore and re-export in libstd.
- [disposition: merge] Limit the promotion of const fns to the libstd and the
- [disposition: merge] stabilize slice_align_to.
- [disposition: merge] resolve: Do not error on access to proc macros imported with
- [disposition: merge] Add a implementation of
- [disposition: merge] (Modules) Tracking issue for Picking a Module Path System variant.
- [disposition: merge] (Modules) Tracking issue for
(use) crate_name::paths without
- [disposition: merge] non-lexical lifetimes (NLL) tracking issue.
- Sep 19. Rust Community Team Meeting in Discord.
- Sep 25. Rust Community Content Subteam Meeting at channel #rust-community.
- Sep 26. Rust Events Team Meeting in Telegram.
- Sep 26. Rust Community Team Meeting in Discord.
- Sep 14. Rome, IT - Rust Rome Meetup.
- 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 13. Columbus, US - Columbus Rust Society - Monthly Meeting.
- 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 17. Boston, US - September Meetup at VMware.
- Sep 18. Denver, US - Denver Rust Meetup.
- Sep 19. Vancouver, CA - Vancouver Rust meetup - Study/Hack/Hang-out.
- Sep 20. Arlington, US - Rust DC - Mid-month Rustful.
- Sep 23. Mountain View, US - Rust Dev in Mountain View!.
- Sep 24. Durham, US - Triangle Rustaceans.
- Sep 25. Dallas, US - Dallas Rust - Last Tuesday.
- Oct 19 & 20. Ann Arbor, US - Rust Belt Rust 2018.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Quote of the Week
Bare Metal Attracts Rust
Thanks to llogiq for the suggestion!