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
- 🎈🎉 Announcing Rust 1.36.0. 🎉🎈
- Async-await status report #2.
- Writing an OS in Rust: Updates in June 2019.
- Method for emulating higher-kinded types in Rust.
- Speedy desktop apps with GTK and Rust.
- Safer, simpler embedded Rust with Apache Mynewt.
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.
- js_int: Add a feature that adds a kind method to ParseIntError.
- js_int: Implement
If you are a Rust project owner and are looking for contributors, please submit tasks here.
Updates from Rust Core
237 pull requests were merged in the last week
- Stabilize support for Profile-guided Optimization (Hooray!)
- Break out of the correct number of scopes in loops
- Improve error span for async type inference error
- Generalize impl trait to permit multiple lifetime bounds
- Support stability and deprecation checking for all macros
DoubleEndedIterator::next_backfor some libcore types
uninitialized} in terms of
- Only call the closure parameter of
Iterator::is_sorted_by_keyonce per item
Changes to Rust follow the Rust RFC (request for comments) process. These are the RFCs that were approved for implementation this week:
No RFCs were approved 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.
No RFCs are currently in final comment period.
- [disposition: merge] Tracking issue for the
castmethod of raw pointers.
- [disposition: merge] Stabilize todo macro.
- [disposition: merge] Add
impl<T> FromIterator<T> for Arc/Rc<[T]>.
- Jun 17. Munich, DE - Rust Munich - Rust Mini Unconference V2.
- Jul 18. Turin, IT - Mozilla Torino - Gruppo di studio Rust.
- Jul 24. Berlin, DE - OpenTechSchool Berlin - Rust Hack and Learn.
- Jul 11. Columbus, OH, US - Columbus Rust Society - Monthly Meeting.
- Jul 11. San Diego, CA, US - San Diego Rust July Meetup.
- Jul 17. San Francisco, CA, US - Rust in Blockchain San Francisco - In Rust We Trust.
- Jul 17. Portland, OR, US - PDXRust - PDX Rust Hack Night (not the usual meetup).
- Jul 24. Mexico City, MX - Rust MX - Reunión Julio: Rust y Big data.
- Jun 24. Durham, NC, US - Triangle Rustaceans - Project Night & Lightning Talks.
- Backend Engineer at Bitski, San Francisco, US.
- Blockchain Runtime Engineer at Parity, Berlin, DE or remote.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Quote of the Week
Are we trying to steal the JVM’s “compile once run everywhere” concept?
No, we just borrow it mutably.
Thanks to Will Page for the suggestion!