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 an email! Want to get involved? We love contributions.
Updates from Rust Community
News & Blog Posts
- Announcing Diesel — A safe, extensible ORM and query builder for Rust.
- Where are you From::from, And what have you turned Into::into? When and for what to use
- Experimenting with Rust.
- Language of the month: Rust.
- Macro hygiene in all its guises and variations.
- Macro plans, overview. An overview of the changes that Nick plans to propose for the macro system.
- Parser Combinators: The road to Chomp 0.1.
Notable New Crates & Projects
- Diesel. A safe, extensible ORM and Query Builder for Rust.
- Chomp. Fast parser combinator library for Rust.
- libkeccak-tiny. A tiny implementation of SHA-3, SHAKE, Keccak, and sha3sum in Rust.
- Waitout. Simple interface for tracking and awaiting the completion of multiple asynchounous tasks.
Updates from Rust Core
69 pull requests were merged in the last week.
- Make unreachable_code lint warn on diverging call arguments as well.
- Add rustc UX guidelines.
- Fix various bugs around empty structs and patterns.
- Update bash-completion.
- Add suggestion of similar macro names to
macro undefinederror message.
rustc::metadatato a rustc_metadata crate.
- Ivan Stankovic
- Jack Fransham
- Jeffrey Seyfried
- Josh Austin
- Kevin Yeh
- Matthias Bussonnier
- Philipp Matthias Schäfer
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
- Add a
IndexAssigntrait that allows overloading "indexed assignment" expressions like
a[b] = c.
- Allow eliding more type parameters.
- Add thread-local custom panic handlers to customize the behavior of thread panics.
- Allow a custom panic handler.
- Add an
- Change thread local variables to only accept async-signal-safe types.
- Amend RFC 550 with (expanded) abstract specification rather than algorithm.
- 12/1. Rust Sydney Meetup.
- 12/2. Boston: Concurrency in Rust Tutorial.
- 12/8. San Diego Rust Meetup.
- 12/9. RustBerlin Hack and Learn.
- 12/11. Rhein-Main Area Rust Meetup.
- 12/14. Seattle Rust Meetup.
fn work(on: RustProject) -> Money
- Research Engineer - Servo at Mozilla.
- Senior Research Engineer - Rust at Mozilla.
- Open Source Software Engineer at MaidSafe.
- Software Engineer - Sensor Development at IronNet Cybersecurity.
Tweet us at @ThisWeekInRust to get your job offers listed here!
Crate of the Week
This week's Crate of the Week is Chrono, a crate that offers very handy timezone-aware