1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
|
Title: This Week in Rust 95
Number: 95
Date: 2015-09-07
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: [nasa42](https://github.com/nasa42) and [llogiq](https://github.com/llogiq).
# From the Blogosphere
* [Designing a GC in Rust](https://manishearth.github.io/blog/2015/09/01/designing-a-gc-in-rust/).
* [Rusty Radio: Episode 3](http://rustyrad.io/podcast/3/). Who Develops the Developer Tools? Featuring Phil Dawes (Racer), Nathan Sobo (Atom), and Christian Hergert (Builder).
* [Combine 1.0.0 and a simple INI parser](https://marwes.github.io/2015/08/28/combine-1.0.0.html).
* [Boilerplate Beginning - Piccolo Part 1](https://polyfractal.com/post/boilerplate-beginning-piccolo-part-1/). Writing a key-value store in Rust.
* [Clippy vs. Rust](https://llogiq.github.io/2015/09/06/clippy.html). Running Clippy on rustc and stdlib.
* [`rust-gnome` is now `Gtk-rs`](http://gtk-rs.org/blog/2015/09/06/the-name-is-gtk-rs.html).
# New Releases & Project Updates
* [swiboe](https://github.com/swiboe/swiboe). The text editor for the next 25 years.
* [cargo-clippy](https://github.com/arcnmx/cargo-clippy) - runs clippy on the current project.
* [ring](https://github.com/briansmith/ring). Simplified libcrypto (from BoringSSL) for Rust, C/C++, etc.
* [Ideone](https://ideone.com) added support for Rust.
* [Pipeline](https://github.com/johannhof/pipeline.rs). A macro collection to pipe your functions calls, like in F# or Elixir.
# What's cooking on nightly?
114 pull requests were [merged in the last week][merged].
[merged]: https://github.com/issues?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2015-08-31..2015-09-07
See the [subteam report for 2015-09-04][subteam] for details.
[subteam]: https://internals.rust-lang.org/t/subteam-reports-2015-09-04/2600
# New Contributors
* Aleksey Kladov
* AlexDenisov
* benshu
* christopherdumas
* Hunan Rostomyan
* Jack Wilson
* John Thomas
* Jørn Lode
* Viacheslav Chimishuk
* Xiao Chuan Yu
# Approved RFCs
Changes to Rust follow the Rust [RFC (request for comments)
process](https://github.com/rust-lang/rfcs#rust-rfcs). These
are the RFCs that were approved for implementation this week:
* [RFC 953: overloaded assignment operations `a += b`](https://github.com/rust-lang/rfcs/pull/953).
* [RFC 1135: Implement raw fat pointer comparisons](https://github.com/rust-lang/rfcs/pull/1135).
* [RFC 1192: Allow a `x...y` expression to create an inclusive range](https://github.com/rust-lang/rfcs/pull/1192).
* [RFC 1229: Turn statically known erroneous code into a warning and continue normal code-generation](https://github.com/rust-lang/rfcs/pull/1229).
# Final Comment Period
Every week [the team](https://rust-lang.org/team.html) announces the
'final comment period' for RFCs and key PRs which are reaching a
decision. Express your opinions now. [This week's FCPs][fcp] are:
[fcp]: https://github.com/issues?utf8=%E2%9C%93&q=is%3Apr+org%3Arust-lang+label%3Afinal-comment-period+is%3Aopen+updated%3A2015-08-31..2015-09-07
* [Expand the `std::net` module to bind more low-level interfaces](https://github.com/rust-lang/rfcs/pull/1158).
* [Add `Box::leak` to leak `Box<T>` to `&'static mut T`](https://github.com/rust-lang/rfcs/pull/1233).
* [Forbid wildcard dependencies on crates.io](https://github.com/rust-lang/rfcs/pull/1241).
* [References into `repr(packed)` structs should be `unsafe`](https://github.com/rust-lang/rfcs/pull/1240).
* [Revise the Drop Check (`dropck`) part of Rust's static analyses](https://github.com/rust-lang/rfcs/pull/1238).
* [Update the RFC process with sub-teams, amongst other things.](https://github.com/rust-lang/rfcs/pull/1224).
* [Lay the ground work for building powerful SIMD functionality.](https://github.com/rust-lang/rfcs/pull/1199).
# New RFCs
* [Allow overlapping implementations for marker traits](https://github.com/rust-lang/rfcs/pull/1268).
* [Allow library authors to use a `#[deprecate]` attribute](https://github.com/rust-lang/rfcs/pull/1270).
# Crate of the Week
This is a new part of this weekly installation, where we will write about a crate that some of you may not know.
Please nominate a crate of your choice at the [rust-users thread](https://users.rust-lang.org/t/crate-of-the-week/2704/15) so we can write about it next week.
For this first installment, the most votes went to [Serde](https://github.com/serde-rs/serde). Despite many of you probably knowing it, we accepted the popular vote because of the great benefit those who don't yet know it may get. Thanks go to [bstrie](https://users.rust-lang.org/users/bstrie) for the suggestion.
[**Serde**](https://github.com/serde-rs/serde) (de)serializes arbitrary Rust data to a number of formats, including [JSON](https://crates.io/crates/serde_json), [XML](https://github.com/serde-rs/xml), [YAML](https://github.com/serde-rs/yaml/), [Bincode](https://crates.io/crates/bincode) and [MessagePack](https://crates.io/crates/rmp). It is possible to write encoder/decoder pairs to work with Serde that don't need to know too much about Rust objects, and Rust data structures only need a pair of auto-derived traits to work with Serde. Now what can one use serializaton for? Storing Rust objects in files or database blobs, sending them between processes, over language-barriers or over the network, for one.
In short, Serde is _the_ Rust framework for your (de)serialization needs.
# Upcoming Events
* [9/14. Seattle Rust Meetup](https://www.eventbrite.com/e/mozilla-rust-seattle-meetup-tickets-12222326307?aff=erelexporg).
* [9/15. San Diego Rust Meetup #8](http://www.meetup.com/San-Diego-Rust/events/224577039/).
* [9/17. Rust Meetup Hamburg: Show, Tell and Drink](http://www.meetup.com/Rust-Meetup-Hamburg/events/225116081/).
* [9/21. Rust Paris](http://www.meetup.com/Rust-Paris).
* [9/23. Columbus Rust Society](http://www.meetup.com/columbus-rs/).
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
# fn work(on: RustProject) -> Money
*No jobs listed for this week. Tweet us at [@ThisWeekInRust](https://twitter.com/ThisWeekInRust) to get your job offers listed here!*
# Quote of the Week
*"[Rust] the language had to dedicate so much real estate to this (difficult) problem alone, it became a disharmonic creature with one bulging muscle and little of anything else."* — [Andrei Alexandrescu (one of designers of D)](https://www.reddit.com/r/programming/comments/3ioy9b/andrei_alexandrescu_c_guru_leaves_facebook_to/cuj0csn).
Thanks to [llogiq](https://users.rust-lang.org/users/llogiq) for the tip. [Submit your quotes for next week!][submit].
[submit]: http://users.rust-lang.org/t/twir-quote-of-the-week/328
|