Hello and welcome to another issue of This Week in Rust! Rust is a systems language pursuing the trifecta: safe, concurrent, and fast. This is a weekly summary of its progress and community. Want something mentioned? Send me an email! Want to get involved? We love contributions.
This week, it was anounced that Steve Klabnik has been hired to work exclusively on our documentation, starting tomorrow.
What's cooking on master?
73 pull requests were merged in the last week.
Breaking Changes
The complete breaking change log is available
here, and you can view it
with git log --no-merges --grep 'breaking-change' --since 6/14/2014 --until 6/21/2014
.
Other Changes
- Cross compiling to iOS is now supported.
- The borrow checker has seen a bunch of cleanup removing the obsolete notion of "restrictions".
- Byte strings and byte literals have been added to the language.
- Dataflow uses the new CFG rather than a syntax-based analysis.
- The non-exhaustive pattern error now gives a pattern which is not matched.
- The stability index has seen some extension.
New Contributors
- Christopher Bergqvist
- Conrad Kleinespel
- John Schmidt
- Nathan Typanski
- Niklas Koep
New RFCs
- Revised UFCS performance
- Flexible target specification
- Remove special treatment of Box by borrow checker
- Refine the
asm!
extension - Rename mod.rs files to self.rs
- Opt-in builtin traits take 2, default and negative impls
- Add optional type parameter to
include_bin!
- Add prefetch intrinsics
- Add
cloned
andstable
keywords - Rename
Share
toThreadsafe
- Syntax sugar for prefix-style type parameter lists
Community Updates
- Snowmew's architecture part 2: data management
rust-osc
, Open Sound Control 1.0 over UDP in Rust.- Piston Game Engine: Progress Update
Checked<T>
, a type for more ergonomic checked integer arithmetic.- Weekly meeting notes
rust-empty
0.5 released
This Week in Servo
Servo is a web browser engine written in Rust and is one of the primary test cases for the Rust language.
In the last two weeks, we landed 53 PRs.
Notable additions
- Brian Anderson landed parallel renedering
- Lars Bergstrom and Manish Goregaokar changed Servo to use a prebuilt Rust compiler (reducing build times from hours to < 10 minutes!) and enabled Travis CI builds
- ms2ger added support for rapidly failing the script task when the JS engine goes OOM
- fdipilla added support for spaces in paths in our configure scripts
- Tetsuharu OHZEKI added support for internal mutability for many pieces of code in Servo
- Martin Robinson added overflow support to child layer sizes
- Matt Brubeck separated desktop and mobile zoom calculations
- schaars ensured that noscript elements are not displayed
- Bruno Abinader implemented querySelectorAll
- Luqman Aden fixed up build failures on Android
- Glenn Watson added a Rust string interning repo (though he declined to name it "yarnbox")
New Contributors
Pierre Louis Aublin (schaars) fdipilla
Meetings and Notes
There were meetings two weeks ago discussing the next workweek and build system issues and last week about the move to Travis CI, embedding support, and the web platform tests.