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
- Not explicit. What it means for Rust syntax to be explicit.
- Porting a roguelike game to WebAssembly.
- Simulating conditional enum variants in Rust.
- Rust IDE + REPL In Vim.
- Making TRust-DNS faster than BIND9.
- Diesel 1.0 released.
- This year in Gfx-rs 2017.
- This week in Redox 34.
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.
- Get started with these beginner-friendly issues.
- [easy] gluon: Add syntax aware contexts to errors.
- gluon: Make it possible to use a custom allocator for the vm.
- gluon: Add raw string literals.
- gluon: Run clippy.
- gluon: Try to make gluon compile compile to wasm.
- mdBook: Article named 'print' triggers printing dialog.
- mdBook: Facilitate maintaining URLs with redirect mapping.
- mdBook: build is overeager to delete files in destination.
- mdBook: Styling flash on RBE.
- mdBook: Changing Chapter removes focus from main area.
- mdBook: hyperlink to another section jumps to wrong location on Firefox 57.
- mdBook: Document the Ace Editor.
If you are a Rust project owner and are looking for contributors, please submit tasks here.
Updates from Rust Core
79 pull requests were merged in the last week
fn main()(RFC #1937)
- allow lifetimes in macros
- Make the output of the column! macro 1 based
- Improved error messages for linking failure
- Use def span for non-ascii ident feature gate error
- rustc_trans: support ZST indexing involving uninhabited types
- rustc: don't use union layouts for tagged union enums
- update check::cast::pointer_kind logic to new rustc
- Use memchr to speed up
[u8]::contains3x, also Use memchr for str::find(char) for 10x improvement
- Optimise min/max
- Make internal docs build properly and Add compiler docs testing to CI
- Bastian Köcher
- Josh Holmer
- Matt Peterson
- Rafael Fernández López
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
- [disposition: merge] Fallible collection allocation 1.0.
- [disposition: merge] Implicit caller location (third try to the unwrap/expect line info problem).
- [disposition: merge] Unsized rvalues.
- [disposition: merge] eRFC: Cargo build system integration.
- [disposition: merge] Type privacy and private-in-public lints.
- Jan 6. Rust Bangalore - Rust and Go compared.
- Jan 7. Dive into Rust @ Guna, MP India.
- Jan 8. Seattle Rust Monthly Meetup.
- Jan 8. Rust Cologne - Rust Open Space.
- Jan 9. Downtown Community Hack Night at nordstromrack.com | Hautelook - Los Angeles.
- Jan 9. Rust Roma - Rust learning and hacking evening.
- Jan 10. Rust Community Team Meeting at #rust-community on irc.mozilla.org.
- Jan 10. Rust Documentation Team Meeting at #rust-docs on irc.mozilla.org.
- Jan 11. Rust release triage.
- Jan 11. San Diego Rust January Meetup.
- Jan 11. Columbus Rust Society - Monthly Meeting.
- Jan 15. Rust Sydney - Meetup 12.
- Jan 17. Rust Community Team Meeting at #rust-community on irc.mozilla.org.
- Jan 17. Rust Documentation Team Meeting at #rust-docs on irc.mozilla.org.
- Jan 18. Rust DC - Mid-month Rustful.
- Jan 18. Cambridge Rust Meetup.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Quote of the Week
If C is like playing with knives and C++ is like juggling chainsaws then Rust is like parkour wearing protective gear while suspended from strings. It may look ridiculous at times, but you can do all sorts of awesome moves that would be damn scary or outright impossible without it.
Thanks to Christopher Durham for the suggestion!