diff options
author | Brian Anderson <banderson@mozilla.com> | 2015-06-23 16:04:18 -0700 |
---|---|---|
committer | Brian Anderson <banderson@mozilla.com> | 2015-06-23 16:05:41 -0700 |
commit | 9ebab6a8b6e1e652da5703b2f78c90efac154d39 (patch) | |
tree | 97e33f3d68cfa02e74f9d7de568fcc64a3c5ea7b /content/2015-06-22-this-week-in-rust.md | |
parent | 7deb5eae9095fe7e1e4b2f8f211ae7e4259b3073 (diff) |
Finish 2015-06-22
Diffstat (limited to 'content/2015-06-22-this-week-in-rust.md')
-rw-r--r-- | content/2015-06-22-this-week-in-rust.md | 163 |
1 files changed, 163 insertions, 0 deletions
diff --git a/content/2015-06-22-this-week-in-rust.md b/content/2015-06-22-this-week-in-rust.md new file mode 100644 index 0000000..4d1fb38 --- /dev/null +++ b/content/2015-06-22-this-week-in-rust.md @@ -0,0 +1,163 @@ +Title: This Week in Rust 84 +Date: 2015-06-22 +Category: This Week in Rust + +Hello and welcome to another issue of *This Week in Rust*! +[Rust](http://rust-lang.org) 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](https://twitter.com/ThisWeekInRust) or [send us an +email](mailto:corey@octayn.net?subject=This%20Week%20in%20Rust%20Suggestion)! +Want to get involved? [We love +contributions](https://github.com/rust-lang/rust/wiki/Note-guide-for-new-contributors). + +*This Week in Rust* is openly developed [on GitHub](https://github.com/cmr/this-week-in-rust). +If you find any errors in this week's issue, [please submit a PR](https://github.com/cmr/this-week-in-rust/pulls). + +This week's edition was edited by: [Brian Anderson](https://github.com/brson), [Vikrant Chaudhary](https://github.com/nasa42), [Andrew Gallant](https://github.com/BurntSushi), and [mdinger](https://github.com/mdinger). + +# From the Blogosphere + +* [Exceptional results: error handling with C# and Rust](https://ruudvanasseldonk.com/2015/06/17/exceptional-results-error-handling-in-csharp-and-rust). Exceptions based error handling in C# vs Rust's monadic approach. +* [Rust Torrent](http://pietro.menna.net.br/recurse-center/rust/2015/06/19/rusty-torrent/). Pietro Menna shares his experiece of writing a BitTorrent client in Rust. +* [Exploring Rust](http://www.wilfred.me.uk/blog/2015/06/18/exploring-rust/). A brief look at state of affairs in Rust 1.0. +* [Rust using Visual Studio Code](https://mobiarch.wordpress.com/2015/06/16/rust-using-visual-studio-code/). Setup Visual Studio Code for Rust development. + +# Tips & Tricks + +* [How to pass a closure into a trait object](http://camjackson.net/post/rust-lang-how-to-pass-a-closure-into-a-trait-object). +* [Rust error stacktraces](http://phildawes.net/blog/2015/06/17/rust-stacktrace/). Get stacktrace from errors in production code. +* [Benchmarking in Rust with `libtest`](https://llogiq.github.io/2015/06/16/bench.html). + +# In the News + +* [Google Bazel added support for Rust](https://github.com/google/bazel/tree/master/tools/build_rules/rust). +* [Impala: a Rust dialect that can partially evaluate functions at compile time and produce GPU code](http://compilers.cs.uni-saarland.de/papers/ppl14_web.pdf). +* [Rust: Announcing the community subteam](https://internals.rust-lang.org/t/announcing-the-community-subteam/2248). + +# New Releases & Project Updates + +* [RustLex](https://github.com/LeoTestard/rustlex). Lexical analysers generator for Rust. +* [rsedis](https://github.com/seppo0010/rsedis). Redis re-implemented in Rust. +* [cargo add](https://github.com/withoutboats/cargo-add). A utility for adding cargo dependencies from the command line. +* [volley](https://github.com/jonhoo/volley). A benchmarking tool for measuring the performance of server networking stacks. +* [Rust Dispatcher](https://github.com/timonv/rdispatcher). Dispatcher for Rust, broadcast and subscribe many to many. +* [rust-vim-setup](https://github.com/ivanceras/rust-vim-setup). Use VIM as your Rust IDE - set of bash scripts and a customised `vimrc` for Rust development. +* [Herd](https://github.com/imjacobclark/herd). An experimental HTTP load testing application written in Rust. + +* A summary of the major changes to [Rust by example](http://rustbyexample.com/) +in the past few months include: + - February 15, 2015: The [flow control section](http://rustbyexample.com/flow_control.html) +was [created](https://github.com/rust-lang/rust-by-example/pull/421) to house +all flow control operations together. + - March 21, 2015: The [formatting section](http://rustbyexample.com/hello/print.html) +was [revised](https://github.com/rust-lang/rust-by-example/pull/496) so new +users are immediately confronted with the distinction of `Debug` and `Display` +and how to deal with them. + - May 2, 2015: The table of contents was [reorganized](https://github.com/rust-lang/rust-by-example/pull/561) +so examples are sorted consistently by categories. + - May 23, 2015: The [generics section](http://rustbyexample.com/generics.html) was +majorly [expanded](https://github.com/rust-lang/rust-by-example/pull/572). + - June 15, 2015: The [closures section](http://rustbyexample.com/fn/closures.html) was +completely rewritten and [expanded](https://github.com/rust-lang/rust-by-example/pull/594). + +# What's cooking on master? + +112 pull requests were [merged in the last week][merged]. + +[merged]: https://github.com/issues?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2015-06-15..2015-06-22 + +Now you can follow breaking changes *[as they happen][BitRust2]*! + +[BitRust2]: http://killercup.github.io/bitrust/ + +# Breaking Changes + +* [Don't panic when stdout doesn't + exist](https://github.com/rust-lang/rust/pull/26168). See [RFC + 1014](https://github.com/rust-lang/rfcs/blob/master/text/1014-stdout-existential-crisis.md). This + is breaking because it changes the behavior of stdio, but in ways + that are expected to be less surprising. Considered a bugfix. + +# Other Changes + +* Thanks to Ashesh Kumar for pointing out that rust-lang.org was not + configured with DMARC to prevent spoofing. The misconfiguration has + now been corrected. +* [Optimize implementations of FromIterator and Extend for + Vec](https://github.com/rust-lang/rust/pull/22681). +* [Result - Add an `expect` method that prints a message and the `Err` + value](https://github.com/rust-lang/rust/pull/25359). +* [Break apart global unstable + features](https://github.com/rust-lang/rust/pull/26192). Some of the + catch-all feature names, `core`, `std_misc`, `collections`, `alloc`, + are split into smaller, better-named features. +* The regex crate received a [rewrite that includes a big performance + improvement](https://github.com/rust-lang/regex/pull/91). +* [Avoid deref/ref cycles for no-op conversions between unsafe + pointers](https://github.com/rust-lang/rust/pull/26336). Reduces the + amount of IR rustc generates. +* [Pass fat pointers in two immediate + arguments](https://github.com/rust-lang/rust/pull/26411). More + codegen improvements from dotdash. +* [Add FromRow{Fd,Handle,Socket} to os + preludes](https://github.com/rust-lang/rust/pull/26413). +* [Custom Debug impl for + io::Error](https://github.com/rust-lang/rust/pull/26416). + +# New Contributors + +* David Stygstra +* Gulshan Singh +* Jake Hickey +* joliv +* Markus +* Steven Walter +* Yongqian Li + +# Approved RFCs + +* [Update RFC 195 to account for RFC + 246](https://github.com/rust-lang/rfcs/pull/865). Just accounting + for the `const`/`static` distinction in the associated items RFC. +* [Clarify cast rules, especially regarding fat + pointers](https://github.com/rust-lang/rfcs/pull/1052). Updates RFC + 401: coercions. +* [RFC 1156: Adjust default object + bounds](https://github.com/rust-lang/rfcs/blob/master/text/1156-adjust-default-object-bounds.md). This + is a stable breaking change (the first) to the default lifetime + bounds of trait objects. + +# Final Comment Period + +Every week the teams announce a 'final comment period' for RFCs which +are close to reaching a conclusion. Express your opinions now. [This +week's][fcp] RFCs entering FCP are: + +[fcp]: https://github.com/rust-lang/rfcs/pulls?q=is%3Aopen+is%3Apr+label%3Afinal-comment-period + +* [Allow closure expressions to expand to a `&` or `&mut` temporary](https://github.com/rust-lang/rfcs/pull/756). +* [Allow macros in types](https://github.com/rust-lang/rfcs/pull/873). +* [read_all](https://github.com/rust-lang/rfcs/pull/980). +* [Add read_into_buf and get_buf to BufRead](https://github.com/rust-lang/rfcs/pull/1015). +* [Rename `connect` to `join`](https://github.com/rust-lang/rfcs/pull/1102). +* [Implement `FromIterator` for the unit type](https://github.com/rust-lang/rfcs/pull/1130). +* [Add some of `[T]`'s methods to strings and vice-versa](https://github.com/rust-lang/rfcs/pull/1152). + +# New RFCs + +* [Make `size` an associated constant](https://github.com/rust-lang/rfcs/pull/1168). + +# Upcoming Events + +* [6/23. Hannover](http://blog.thoughtram.io/rust/2015/06/17/anouncing-hanovers-second-rust-meetup.html) +* [6/24. Columbus Rust Society](http://www.meetup.com/columbus-rs/) +* [6/29. Sydney](http://www.meetup.com/Rust-Sydney/events/222811456/) + +If you are running a Rust event please add it to the [calendar] to get +it mentioned here. Email [Erick Tryzelaar][erickt] or [Brian +Anderson][brson] for access. + +[calendar]: https://www.google.com/calendar/embed?src=apd9vmbc22egenmtu5l6c5jbfc%40group.calendar.google.com +[erickt]: mailto:erick.tryzelaar@gmail.com +[brson]: mailto:banderson@mozilla.com + |