diff options
-rw-r--r-- | content/2015-06-08-this-week-in-rust.md | 4 | ||||
-rw-r--r-- | content/2015-06-15-this-week-in-rust.md | 151 | ||||
-rw-r--r-- | content/2015-06-22-this-week-in-rust.md | 171 | ||||
-rw-r--r-- | content/2015-06-29-this-week-in-rust.md | 110 | ||||
-rw-r--r-- | content/2015-07-06-this-week-in-rust.md | 101 | ||||
-rw-r--r-- | content/2015-07-13-this-week-in-rust.md | 119 | ||||
-rw-r--r-- | content/2015-07-20-this-week-in-rust.md | 140 | ||||
-rw-r--r-- | content/2015-07-27-this-week-in-rust.md | 168 | ||||
-rw-r--r-- | content/2015-08-03-this-week-in-rust.md | 200 | ||||
-rw-r--r-- | content/2015-08-10-this-week-in-rust.md | 203 | ||||
-rw-r--r-- | drafts/YYYY-MM-DD-this-week-in-rust.md (renamed from drafts/YYYY-MM-DD-this-week-in-rust-template.md) | 64 | ||||
-rw-r--r-- | pelicanconf.py | 2 | ||||
-rw-r--r-- | themes/pelican-elegant-1.3/static/css/style.css | 28 |
13 files changed, 1433 insertions, 28 deletions
diff --git a/content/2015-06-08-this-week-in-rust.md b/content/2015-06-08-this-week-in-rust.md index a6a5dcf..52bc3de 100644 --- a/content/2015-06-08-this-week-in-rust.md +++ b/content/2015-06-08-this-week-in-rust.md @@ -23,10 +23,10 @@ details are still to be determined. Please submit talk proposals. Several I/O stabilization patches have been nominated for backporting to 1.1, filling out the somewhat meager story we had for 1.0. With things moving somewhat slowly since the last release, I/O improvements will -probably be the most interesting part of the next. +probably be the most interesting part of the next release. If you haven't recently, give [the -playpen](https://play.rust-lang.org) another look as it's recieved +playpen](https://play.rust-lang.org) another look as it's received several new features lately, including a new design from Chris Morgan, the ability to output Intel-flavor asm, automatically post GitHub gists, and run `#[test]` functions. diff --git a/content/2015-06-15-this-week-in-rust.md b/content/2015-06-15-this-week-in-rust.md new file mode 100644 index 0000000..a24c7e0 --- /dev/null +++ b/content/2015-06-15-this-week-in-rust.md @@ -0,0 +1,151 @@ +Title: This Week in Rust 83 +Date: 2015-06-15 +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? [Send me 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 or omissions 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. + +# Notable Links + +* [A graph-based higher-order intermediate representation](http://compilers.cs.uni-saarland.de/papers/lkh15_cgo.pdf). A novel intermediate representation for a dialect of Rust. +* [Interview with Mozilla's Aaron Turon](http://www.pl-enthusiast.net/2015/06/09/interview-with-mozillas-aaron-turon/). +* [Out of curiosity - Who is currently focusing on improving compile times? If so, how is it coming along?](http://www.reddit.com/r/rust/comments/39f21l/out_of_curiosity_who_is_currently_focusing_on/). People are working on compile time. +* [Hodor esolang as a Rust macro](http://www.reddit.com/r/rust/comments/39wvrm/hodor_esolang_as_a_rust_macro/). +* [dispatcher](https://github.com/timonv/rdispatcher). Many-to-many channels. +* ['When you have no room for error'](http://www.commitstrip.com/en/2015/06/15/when-you-have-no-room-for-error/). The CommitStrip comic mentions Rust. +* [Fundraiser for a multi-language (incl. Rust) teaching tent at Chaos Communication Camp](https://www.betterplace.org/en/projects/30076-an-assembly-on-chaos-communication-camp-providing-free-teaching). + +# Project Updates + +* [Homu, a gatekeeper for your commits](http://homu.io/). Barosl is now offering homu-as-a-service. This is the CI system Rust and Servo both use, and it is compatible with Travis CI. +* [rustorm](http://www.reddit.com/r/rust/comments/395hwl/ivancerasrustorm_a_simple_orm_for_rust/). A simple ORM. +* [snake-piston](http://www.reddit.com/r/rust/comments/398azz/snake_game_in_rust_using_piston/). A snake game written with Piston. +* [yaml-rust](http://chyh1990.github.io/yaml-rust/). A pure-Rust YAML 1.2 parser. +* [crust](http://www.reddit.com/r/rust/comments/39elgj/crust_reliable_p2p_network_connections_in_rust/). Reliable p2p with NAT traversal. +* [aho-corasick](https://github.com/BurntSushi/aho-corasick). Fast multi-substring nmatching. +* [pcapng-rs](https://github.com/richo/pcapng-rs). A [pcapng](https://github.com/pcapng/pcapng) parser written with [nom](https://github.com/Geal/nom). +* [deuterium](https://github.com/deuterium-orm/deuterium). A fully-typed SQL query builder. +* [regex](https://github.com/rust-lang/regex/pull/91). It got faster. A lot faster. + +# What's cooking on master? + +160 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-07..2015-06-15 + +Now you can follow breaking changes *[as they happen][BitRust2]*! + +[BitRust2]: http://killercup.github.io/bitrust/ + +# Breaking Changes + +* [Prevent raw pointers from being used as explicit + self](https://github.com/rust-lang/rust/pull/26225). Probably nobody + has ever tried to write such code, and the current implemented + behavior is bonkers. + +# Other Changes + +* [Add `Result::expect`](https://github.com/rust-lang/rust/pull/25359/files). +* [Add + `CString::from_ptr/into_ptr`](https://github.com/rust-lang/rust/pull/25777). For + transfering ownership of C strings across the FFI. +* [Implement `str::split_at`](https://github.com/rust-lang/rust/pull/25839). +* [Stabilize a number of new `fs` features](https://github.com/rust-lang/rust/pull/25844). +* [Parallel code generation works + again](https://github.com/rust-lang/rust/pull/26018). Pass `rustc -C + codegen-units=4` to try. +* [The `to_uppercase` and `to_lowercase` functions now support complex + case mapping](https://github.com/rust-lang/rust/pull/26039). This + changes the behavior of the *stable* + `char::to_uppercase/to_lowercase` and also stabilizes + `str::to_uppercase/to_lowercase`. +* [Implement `Extend<&T> where: T: Copy` for a variety of collection + types](https://github.com/rust-lang/rust/pull/25989). +* [The unstable `String::from_str` is + deprecated](https://github.com/rust-lang/rust/pull/26077). Use + `String::from`. +* [Heuristics for detecting identifier typos are improved](https://github.com/rust-lang/rust/pull/26087). + +# New Contributors + +* ben fleis +* David Voit +* Eli Friedman +* frankamp +* funkill +* Johann Tuffe +* joliv +* Joshua Landau +* Leo Correa +* marcell +* Marcel Müller +* Matthew Astley +* Nathan Long +* Nick Fitzgerald +* Russell McClellan +* saml +* simplex +* swgillespie + +# Approved RFCs + +* [RFC 1105. Policy on API + evolution](https://github.com/rust-lang/rfcs/blob/master/text/1105-api-evolution.md). Describes + how the Rust project evaluates changes to the libraries, and which are allowed when. +* [RFC 1119. `Result::expect`](https://github.com/rust-lang/rfcs/pull/1119). +* [RFC 1122. Semantic + versioning](https://github.com/rust-lang/rfcs/blob/master/text/1122-language-semver.md). Describes + how the language itself is allowed to change. +* [RFC 1123. Introduce `str::split_at`](https://github.com/rust-lang/rfcs/blob/master/text/1123-str-split-at.md) +* [RFC 1131. `likely` intrinsic](https://github.com/rust-lang/rfcs/blob/master/text/1131-likely-intrinsic.md). For hinting hot and cold branches. + +# New RFCs + +* [Adjust default object +bounds](https://github.com/rust-lang/rfcs/pull/1156). This fixes some +dumb rules that made it into 1.0, but is a breaking change that +affects relatively little code. +* [Expand the `std::net` module](https://github.com/rust-lang/rfcs/pull/1158). + +# Upcoming Events + +* [6/17. Montreal](http://www.meetup.com/Montreal-Rust-Language-Meetup/events/223045701/) +* [6/17. Los Angeles](http://www.meetup.com/Rust-Los-Angeles/events/222656434/) +* [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 + +# Quote of the Week + +```text +<Quxxy> I had a fun one in cargo script: there's currently no way in Rust +to get a file's mtime and the system time in the same time format +<Quxxy> (On Windows) +<Quxxy> You can get one in UNIX time, the other in Windows time +<Quxxy> Which have different scales and different epochs +<Quxxy> Rust: Buy Your Own Damn Batteries; What Are You, A Communist? +``` + +Quxxy discovers Rust's stance toward the inclusion of batteries. + +Thanks to cmr for the tip. [Submit your quotes for next week!][submit]. + +[submit]: http://users.rust-lang.org/t/twir-quote-of-the-week/328 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..fbb80cb --- /dev/null +++ b/content/2015-06-22-this-week-in-rust.md @@ -0,0 +1,171 @@ +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. +* [MaidSafe's Rust rewrite is going well](https://forum.safenetwork.io/t/maidsafe-dev-update-8th-june-2015/4069). +* [claxon](https://github.com/ruud-v-a/claxon). A FLAC decoder. + +[Rust by example](http://rustbyexample.com/) has received a number of +improvements recently: + +* 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 FromRaw{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 + diff --git a/content/2015-06-29-this-week-in-rust.md b/content/2015-06-29-this-week-in-rust.md new file mode 100644 index 0000000..6076b9c --- /dev/null +++ b/content/2015-06-29-this-week-in-rust.md @@ -0,0 +1,110 @@ +Title: This Week in Rust 85 +Date: 2015-06-29 +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). + +# From the Blogosphere + +* [Dealing With the Rust Shift in Perspective](https://joelmccracken.github.io/entries/dealing-with-the-rust-shift-in-perspective/). +* [rusty radio: Episode 1: A Rusty Start](http://rustyrad.io/podcast/1/). +* [Rust, the Language for Growth](https://joelmccracken.github.io/entries/rust-the-language-for-growth/). + +# Tips & Tricks + +* [How to Use Rust with Node.js When Performance Matters](http://blog.risingstack.com/how-to-use-rust-with-node-when-performance-matters/). Write performance critical code in Rust and use it via FFI in Node.js. +* [Effectively Using Iterators In Rust](http://hermanradtke.com/2015/06/22/effectively-using-iterators-in-rust.html). Iterate over vector and slice types using `.iter()` and `.into_iter()`. +* [First Rust Program Pain (So you can avoid it…)](http://dtrace.org/blogs/ahl/2015/06/22/first-rust-program-pain/). Tips for Rust beginners on how to avoid a fight with the compiler. +* [Implement Traits on Generics](https://mr-byte.github.io/blog/blog/2015/06/27/traits-on-generics/). +* [The Unsafe Rust Programming Language](http://cglab.ca/~abeinges/blah/turpl/_book/README.html). An excellent document about advanced functionality and low-level development practices in the Rust Programming Language. + +# In the News + +* [Rust 1.1 stable, the Community Subteam, and RustCamp](http://blog.rust-lang.org/2015/06/25/Rust-1.1.html). +* [Tickets are on sale now for RustCamp!](http://rustcamp.com/). + +# New Releases & Project Updates + +* [rust-timsort](https://github.com/notriddle/rust-timsort). Rust implementation of the modified MergeSort used in Python and Java. +* [trust](https://github.com/Wmaxlees/trust). Rust automated test runner. +* [mongo-rust-driver](https://github.com/thijsc/mongo-rust-driver). Mongo Rust driver built on top of the Mongo C driver. +* [rust-ffi-omnibus](http://jakegoulding.com/rust-ffi-omnibus/). A collection of examples of using code written in Rust from other languages. +* [hyper is now at v0.6](http://seanmonstar.com/post/122441373502/hyper-v0-6). An HTTP/S library for Rust. +* [rust-throw](https://github.com/daboross/rust-throw). A new experimental rust error handling library, meant to assist and build on existing error handling systems. +* [burrito](https://github.com/withoutboats/burrito). A monadic IO interface in Rust. +* [mimty](https://bitbucket.org/joshmorin/mimty). Fast, safe, self-contained MIME Type Identification for C and Rust. + +# What's cooking on master? + +95 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-22..2015-06-29 + +# Breaking Changes + +Now you can follow breaking changes *[as they happen][BitRust2]*! + +[BitRust2]: http://killercup.github.io/bitrust/ + +# Other Changes + +* [std: Add support for Windows XP](https://github.com/rust-lang/rust/pull/26601). +* [Reset signal behavior before starting children with std::process](https://github.com/rust-lang/rust/pull/25784). Resets Rust's SIGPIPE handler, as well as any signal mask that may have been set, before spawning a child. +* [MSVC: Implement runtime support for unwinding](https://github.com/rust-lang/rust/pull/26569). A key aspect is missing, however, which is that unwinding is still turned off by default for MSVC. +* [Suggest missing trait bounds when a method exists but the bounds aren't satisfied](https://github.com/rust-lang/rust/pull/26435). + +# New Contributors + +* Andy Grover +* Brody Holden +* Christian Persson +* Cruz Julian Bishop +* Dirkjan Ochtman +* Gulshan Singh +* Jake Hickey +* Makoto Kato +* Yongqian Li + +# Final Comment Period + +Every week the teams announce a 'final comment period' for RFCs which +are reaching a decision. 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 + +* [Add some of `[T]`’s methods to strings and vice versa](https://github.com/rust-lang/rfcs/pull/1152). +* [Implement `FromIterator` for the unit type](https://github.com/rust-lang/rfcs/pull/1130). +* [Rename `connect` to `join`](https://github.com/rust-lang/rfcs/pull/1102). +* [Add `read_into_buf` and `get_buf` to `BufRead`](https://github.com/rust-lang/rfcs/pull/1015). +* [read_all](https://github.com/rust-lang/rfcs/pull/980). +* [Allow macros in types](https://github.com/rust-lang/rfcs/pull/873). +* [Allow closure expressions to expand to a `&` or `&mut` temporary](https://github.com/rust-lang/rfcs/pull/756). + +# New RFCs + +* [Return `Result` from `main`](https://github.com/rust-lang/rfcs/issues/1176). + +# Upcoming Events + +* [7/7, San Diego Rust Meetup](http://www.meetup.com/San-Diego-Rust/events/223145739/) +* [7/8, Rust in Production - San Francisco](http://www.meetup.com/Rust-Bay-Area/events/222260315/) +* [7/13, Seattle Rust Meetup](https://www.eventbrite.com/e/mozilla-rust-seattle-meetup-tickets-12222326307?aff=erelexporg) +* [7/15, Rust Los Angeles Monthly Meetup](http://www.meetup.com/Rust-Los-Angeles/events/223341178) + +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 diff --git a/content/2015-07-06-this-week-in-rust.md b/content/2015-07-06-this-week-in-rust.md new file mode 100644 index 0000000..383a9ef --- /dev/null +++ b/content/2015-07-06-this-week-in-rust.md @@ -0,0 +1,101 @@ +Title: This Week in Rust 86 +Date: 2015-07-06 +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). + +# From the Blogosphere + +* [Things rust shipped without](https://graydon2.dreamwidth.org/218040.html). Rust released 1.0 without these "features", and for good reasons. +* [Rust Never Sleeps: How Mozilla Could Become Cool Again](http://readwrite.com/2015/07/02/mozilla-rust-programming-language-potential). Mozilla has almost faded from memory, but Rust could make it hip again. +* [Why Go and Rust are not competitors](http://dave.cheney.net/2015/07/02/why-go-and-rust-are-not-competitors). +* [A Rusting Rubyist](https://medium.com/@mfpiccolo/a-rubyist-rusting-db6e7e9c8f36). Mike Piccolo documents his attempt to create a web scraping library in Rust that can be called from a Ruby module. +* [A Rusting Rubyist II](https://medium.com/@mfpiccolo/a-rubyist-rusting-ii-f72dd8b0ed97). +* [A Pythonist getting Rusty these days... (Part 1)](https://wafflespeanut.github.io/blog/2015/07/05/a-pythonist-getting-rusty-these-days-dot/). Rust from a Python developer's perspective. +* [A Simple Web App in Rust, Part 3 -- Integration](https://joelmccracken.github.io/entries/a-simple-web-app-in-rust-pt-3/). The third part in a series on writing a very simple web application in Rust. +* [Understanding Lifetime in Rust – Part I](https://mobiarch.wordpress.com/2015/06/29/understanding-lifetime-in-rust-part-i/). +* [[PDF] Parallelization in Rust with fork-join and friends](http://publications.lib.chalmers.se/records/fulltext/219016/219016.pdf). + +# New Releases & Project Updates + +* [capgun](https://github.com/softprops/capgun). A simple utility that watches files and fires a specified command when they do. +* [pirate](https://github.com/zcdziura/pirate). A command-line arrrrguments parser, written in Rust. +* [rust-worldgen](https://github.com/YeyaSwizaw/rust-worldgen). Noise and World Generation library for Rust. +* [plex](https://github.com/goffrie/plex). A parser and lexer generator as a Rust syntax extension. + +# What's cooking on nightly? + +107 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-29..2015-07-06 + +# New Contributors + +* Adam Heins +* Alex Newman +* Christian Persson +* Eljay +* Kagami Sascha Rosylight + +# Approved RFCs + +* [Add some of `[T]`’s methods to strings and vice versa](https://github.com/rust-lang/rfcs/pull/1152). + +# Final Comment Period + +Every week the teams announce a 'final comment period' for RFCs which +are reaching a decision. 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 + +* [Expand the std::net module](https://github.com/rust-lang/rfcs/pull/1158). Expand the surface area of std::net to bind more low-level interfaces and provide more advanced customization and configuration of sockets. +* [Rename `connect` to `join`](https://github.com/rust-lang/rfcs/pull/1102). +* [Replace `slice::tail()`/`init()` with new methods](https://github.com/rust-lang/rfcs/pull/1058). +* [Redirect `stdio` of child processes to open file handles](https://github.com/rust-lang/rfcs/pull/1055). +* [Allow macros in types](https://github.com/rust-lang/rfcs/pull/873). +* [Allow closure expressions to expand to a `&` or `&mut` temporary](https://github.com/rust-lang/rfcs/pull/756). Modify the `||` expression sugar so that it can expand to either `F`, `&F`, or `&mut F`, where `F` is a fresh struct type implementing one of the `Fn`/`FnMut`/`FnOnce` traits. + +# New RFCs + +* [Add a high-level intermediate representation (HIR) to the compiler.](https://github.com/rust-lang/rfcs/pull/1191). +* [Style: How should we format function declarations?](https://github.com/rust-lang/rfcs/pull/1190). +* [Stabilize the `#![no_std]` attribute](https://github.com/rust-lang/rfcs/pull/1184). +* [Anonymous/placeholder lifetime `'_`](https://github.com/rust-lang/rfcs/pull/1177). Allow using an undeclared '_ wherever an explicit lifetime can be used, but is optional, such as function argument/return types and any path inside a function. +* [Create `IntoRaw{Fd, Socket, Handle}` trait to complement `AsRaw*`](https://github.com/rust-lang/rfcs/pull/1174). +* [Allow changing the default allocator](https://github.com/rust-lang/rfcs/pull/1183). Add support to the compiler to override the default allocator, allowing a different allocator to be used by default in Rust programs. +* [Propose `Interior<T>` data-type, to allow moves out of the dropped value during the drop hook](https://github.com/rust-lang/rfcs/pull/1180). + +# Upcoming Events + +* [7/7, San Diego Rust Meetup](http://www.meetup.com/San-Diego-Rust/events/223145739/) +* [7/8, Rust in Production - San Francisco](http://www.meetup.com/Rust-Bay-Area/events/222260315/) +* [7/13, Seattle Rust Meetup](https://www.eventbrite.com/e/mozilla-rust-seattle-meetup-tickets-12222326307?aff=erelexporg) +* [7/15, Rust Los Angeles Monthly Meetup](http://www.meetup.com/Rust-Los-Angeles/events/223341178) +* [7/20, Rust Paris](http://www.meetup.com/Rust-Paris). +* [7/22, 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 + +# Quote of the Week + +*"Greek constitution to be rewritten in #rustlang to deal with their ownership and borrowing problem."* — [@bigthingist](https://twitter.com/bigthingist/status/616826349634908160) + +[Submit your quotes for next week!][submit]. + +[submit]: http://users.rust-lang.org/t/twir-quote-of-the-week/328 diff --git a/content/2015-07-13-this-week-in-rust.md b/content/2015-07-13-this-week-in-rust.md new file mode 100644 index 0000000..a1bd62c --- /dev/null +++ b/content/2015-07-13-this-week-in-rust.md @@ -0,0 +1,119 @@ +Title: This Week in Rust 87 +Date: 2015-07-13 +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, Vikrant Chaudhary + +# From the Blogosphere + +* [Rust in Detail: Writing Scalable Chat Service from Scratch](https://nbaksalyar.github.io/2015/07/10/writing-chat-in-rust.html). +* [Reading Rust Function Signatures](http://hoverbear.org/2015/07/10/reading-rust-function-signatures/). How to read function signatures and extract information from them. +* [Collecting Results from Collections](http://hoverbear.org/2015/07/08/a-useful-error-pattern/). Use `.collect()` to transform `Vec<Result<()>>` into `Result<Vec<()>>`. +* [Easier libc in Rust](https://mobiarch.wordpress.com/2015/07/03/easy-libc-in-rust/). An index of some of the most commonly used libc calls and their higher level wrappers. +* [Importing C constants: Proof of Concept](http://vojtech.kral.hk/en/rust-importing-c-constants-proof-of-concept/). A proof-of-concept rustc plugin that imports C macro constants from C include files at compile time. +* [A Pythonist getting Rusty these days... (Part 2)](https://wafflespeanut.github.io/blog/2015/07/08/a-pythonist-getting-rusty-these-days-dot-dot-dot-part-2/). Rust from a Python developer's perspective (part 2). +* [Converting longitude and latitude coordinates into BNG coordinates](http://sensitivecities.com/rust-python-ffi-bng-EN.html). +* [ArcadeRS - making a simple game in Rust](https://jadpole.github.io/2015/185/arcaders-1-0/). +* [opinion] [Why Go and Rust are Competitors](http://www.doxsey.net/blog/why-go-and-rust-are-competitors/). + +# New Releases & Project Updates + +* [stdx](https://github.com/brson/stdx). Curated collection of well-regarded Rust crates. +* [ipc-channel](https://github.com/pcwalton/ipc-channel). A multiprocess drop-in replacement for Rust channels. +* [rocket](https://github.com/aochagavia/rocket). A toy game in Rust, using Piston. +* [forkjoin](https://github.com/faern/forkjoin). A work stealing fork-join parallelism library for Rust. +* [capsize](https://github.com/softprops/capsize). Conversions between units of capacity. +* [porthole](https://github.com/softprops/porthole). A tiny rust crate for resolving the next available network port. + +# What's cooking on nightly? + +122 pull requests were [merged in the last week][merged]. + +[merged]: https://github.com/issues?q=is%3Apr+org%3Arust-lang+is%3Amerged+merged%3A2015-07-06..2015-07-13 + +* [bluss](https://github.com/bluss) updated [substring search to use the Two Way algorithm](https://github.com/rust-lang/rust/pull/26327). +* [1.2 beta will issue warnings about code that will break](https://github.com/rust-lang/rust/pull/26829) when [RFC 1156](https://github.com/rust-lang/rfcs/blob/master/text/1156-adjust-default-object-bounds.md) is implemented. This approved breaking change will fix a major wart and is thought to break no real code. +* [Linux installation will try harder to set up the dynamic linker](https://github.com/rust-lang/rust-installer/pull/41), fixing a bad first-run issue where Fedora systems can't run rustc out of the box. +* The `#[prelude_import]` attribute, which is employed by rustc to perform [dark](https://github.com/rust-lang/rust/blob/6a3b385cbd6b9044b4447da96aad066e8b257ddf/src/libsyntax/std_inject.rs#L164) and [mysterious](https://github.com/rust-lang/rust/blob/6a3b385cbd6b9044b4447da96aad066e8b257ddf/src/librustc_resolve/build_reduced_graph.rs#L292-L294) acts, but is not supposed to be stable. This is not known to break real code. +* `rustc` on Windows now [looks in the registry](https://github.com/rust-lang/rust/pull/26741) to find the location of the MSVC linker. +* Inspired by some [poor I/O performance on the forums](https://users.rust-lang.org/t/reading-from-stdin-performance/2025), bluss dug into the problem [and pulled out some big improvements in zero-filling](https://github.com/rust-lang/rust/pull/26849) that greatly improve the performance of `Vec::resize` and `Read::read_to_end`. +* GuillaumeGomez [added a host](https://github.com/rust-lang/rust/pull/26742) of [new error explanations](https://github.com/rust-lang/rust/pull/26879). +* dotdash got some [huge improvements in the performance of `PartialEq` for slices](https://github.com/rust-lang/rust/pull/26884). +* `rustc` now uses [LLVM to write archive files where possible](https://github.com/rust-lang/rust/pull/26926). Eventually this will eliminate the compiler's dependency on the `ar` utility. +* [Add `String::into_boxed_slice` and `Box<str>::into_string`](https://github.com/rust-lang/rust/pull/26931). +* Dave Huseby added [initial support for FreeBSD on i686](https://github.com/rust-lang/rust/pull/26959). Rust has long worked on 64-bit FreeBSD. +* Simon [updated the gedit syntax highlighter](https://github.com/rust-lang/gedit-config/pull/8). + +# New Contributors + +* Alex HotShot Newman +* Christian Weinz +* Esption +* Georg Brandl +* Jesús Espino +* jethrogb + +# Approved RFCs + +* [RFC 1058: Replace `slice.tail()`, `slice.init()` with new methods `slice.split_first()`, `slice.split_last()`](https://github.com/rust-lang/rfcs/blob/master/text/1058-slice-tail-redesign.md). +* [RFC 1102: Rename `connect` to `join`](https://github.com/rust-lang/rfcs/blob/master/text/1102-rename-connect-to-join.md). + +# Final Comment Period + +Every week the teams announce a '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-07-06..2015-07-13 + +* [Add a method `lines_any` to `BufRead`](https://github.com/rust-lang/rust/pull/26743) +* [RFC for creation of `IntoRaw{Fd, Socket, Handle}` trait to complement `AsRaw*`](https://github.com/rust-lang/rfcs/pull/1174) +* [RFC: Expand the std::net module](https://github.com/rust-lang/rfcs/pull/1158) +* [RFC: Allow re-exporting associated items with `use`](https://github.com/rust-lang/rfcs/pull/1150) +* [Allow macros in types](https://github.com/rust-lang/rfcs/pull/873) + +# New RFCs + +* [RFC for inclusive ranges with ...](https://github.com/rust-lang/rfcs/pull/1192) +* [RFC: Prevent lint changes being a breaking change](https://github.com/rust-lang/rfcs/pull/1193) +* [RFC: Add item recovery collection APIs](https://github.com/rust-lang/rfcs/pull/1194) +* [ordered query API](https://github.com/rust-lang/rfcs/pull/1195) +* [RFC for allowing eliding more type parameters](https://github.com/rust-lang/rfcs/pull/1196) +* [pretty print `Debug` of tuples, tuple structs and enum variants in a single line](https://github.com/rust-lang/rfcs/pull/1198) +* [SIMD groundwork](https://github.com/rust-lang/rfcs/pull/1199) +* [RFC: Add `cargo install`](https://github.com/rust-lang/rfcs/pull/1200) +* [Add support for naked functions](https://github.com/rust-lang/rfcs/pull/1201) + +# Upcoming Events + +* [7/15. Tokyo Rust Monthly Meetup](https://rust.doorkeeper.jp/events/27068). +* [7/15. Rust Los Angeles Monthly Meetup](http://www.meetup.com/Rust-Los-Angeles/events/223341178). +* [7/20. Rust Paris](http://www.meetup.com/Rust-Paris). +* [7/22. Columbus Rust Society](http://www.meetup.com/columbus-rs/). + +If you are running a Rust event please add it to the [calendar] to get |