summaryrefslogtreecommitdiffstats
path: root/content/2014-03-02-this-week-in-rust.markdown
diff options
context:
space:
mode:
authorCorey Richardson <corey@octayn.net>2014-11-05 17:12:45 -0500
committerCorey Richardson <corey@octayn.net>2014-11-05 17:12:45 -0500
commitb90d2b10b0708aba718b121861d59555c6818295 (patch)
treec400703ca4f13b34d5ac09099560ebc2f1782f62 /content/2014-03-02-this-week-in-rust.markdown
Initial commit
Diffstat (limited to 'content/2014-03-02-this-week-in-rust.markdown')
-rw-r--r--content/2014-03-02-this-week-in-rust.markdown170
1 files changed, 170 insertions, 0 deletions
diff --git a/content/2014-03-02-this-week-in-rust.markdown b/content/2014-03-02-this-week-in-rust.markdown
new file mode 100644
index 0000000..540d110
--- /dev/null
+++ b/content/2014-03-02-this-week-in-rust.markdown
@@ -0,0 +1,170 @@
+Title: This Week in Rust 39
+Date: 2014-03-02 12:43
+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:
+safe, concurrent, and fast. 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/mozilla/rust/wiki/Note-guide-for-new-contributors).
+
+<!-- more -->
+
+# What's cooking on master?
+
+83 pull requests were merged this week.
+
+## Breaking Changes
+
+- IterBytes and `std::to_bytes` [have been
+removed](https://github.com/mozilla/rust/pull/12492). If you were depending on
+them for anything non-`Hash` related, look into using `serialize` instead.
+- `break` and `continue` [are now hygienic in
+macros](https://github.com/mozilla/rust/pull/12338), with respect to labels.
+Unfortunately there's a bug in it where [loop labels hide variables of the
+same name](https://github.com/mozilla/rust/issues/12512).
+- `extern fn` [now always means `extern "C"
+fn`](https://github.com/mozilla/rust/pull/12328), rather than being
+context-dependent.
+- `std::run` [has been removed](https://github.com/mozilla/rust/pull/12380),
+and `std::io::process` improved to pick up the slack.
+- `#[deriving(ToStr)]` [has been
+removed](https://github.com/mozilla/rust/pull/12412) in favor of
+`#[deriving(Show)]`. `ToStr` is now implemented over all types which implement
+`Show`, as `format!("{}" val)`.
+- `flate` [now returns a
+`CVec<u8>`](https://github.com/mozilla/rust/pull/12445) rather than a `~[u8]`,
+for efficiency.
+- `extra::json` [has been
+liberated](https://github.com/mozilla/rust/pull/12453) and now lives in
+`libserialize`.
+- `swap_remove` on vectors [now returns an
+`Option`](https://github.com/mozilla/rust/pull/12481).
+- A curious bug where bindings in match weren't treated as assignment [has
+been fixed](https://github.com/mozilla/rust/pull/12508). See the associated
+bug report for examples which this will break.
+- Some useless reexports [have been
+removed](https://github.com/mozilla/rust/pull/12485) from the prelude.
+- The `Bool` trait [has been
+removed](https://github.com/mozilla/rust/pull/12473).
+- A bug where operator overloads were over-zealous [has been
+fixed](https://github.com/mozilla/rust/pull/12493).
+- Statics are [no longer allowed to contain anything with
+destructors](https://github.com/mozilla/rust/pull/11979). The exact rules are
+laid out quite nicely in the PR.
+- `collections:List` [has been refactored to use
+iterators](https://github.com/mozilla/rust/pull/12348).
+- `HashMap` [is now generic over
+hashers](https://github.com/mozilla/rust/pull/12544).
+- `assert_eq!` [now uses `{}` instead of `{:?}` for the error
+message](https://github.com/mozilla/rust/pull/12626).
+- Type parameter overrides [are now feature
+gated](https://github.com/mozilla/rust/pull/12525).
+
+## Other Changes
+
+- Invalid crate handling [is now more
+graceful](https://github.com/mozilla/rust/pull/12645).
+- `std::io::stdout()` and `stderr()` [are buffered by default
+now](https://github.com/mozilla/rust/pull/12630).
+- Improper operator overloads [are no longer an
+ICE](https://github.com/mozilla/rust/pull/12638).
+- There's now a warning for [publicly exposing private types in function
+signatures](https://github.com/mozilla/rust/pull/12595).
+- `libnative`'s Windows file handling [has been
+rewritten](https://github.com/mozilla/rust/pull/12584) and now actually works.
+rustc uses libnative by default now.
+- Generated binary size [has been brought down a
+bit](https://github.com/mozilla/rust/pull/12616). There is much more room for
+improvement.
+- "Strict Version Hashes" [have been
+introduced](https://github.com/mozilla/rust/pull/12533). This is a purely
+internal change. The hash is of the crate's public ABI and rustc checks this
+when linking crates together, to avoid problems such as "def id drift".
+
+
+## New Contributors
+
+- Daniel Fagnan
+- Felix Crux
+- Gary M. Josack
+- George Papanikolaou
+- Jag Talon
+- Johannes Löthberg
+- Mickaël Delahaye
+
+# Weekly Meeting
+
+The [weekly
+meeting](https://github.com/mozilla/rust/wiki/Meeting-weekly-2014-02-25)
+discussed TotalEq/TotalOrd, weak extern functions, channel naming, and a brief
+discussion on `use` paths being absolute.
+
+It was announced that a Sam Wright has been contracted to work on the
+tutorial, and the Michael Woerister has been contracted to work on debug info.
+
+# 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.
+
+This week, we landed 27 PRs.
+
+## Notable additions
+
+- Josh Matthews landed the massive changes to remove `@mut` from the DOM types
+in preparation for a Rust upgrade in
+[#1735](https://github.com/mozilla/servo/pull/1735)
+[#1591](https://github.com/mozilla/servo/pull/1591) and
+[#1755](https://github.com/mozilla/servo/pull/1755).
+- Tetsuharu Ohzeki refactored our commandline options out of the rendering
+crate and into a more reasonable place in
+[#1738](https://github.com/mozilla/servo/pull/1738).
+- Ms2ger simplified our Document implementation in
+[#1739](https://github.com/mozilla/servo/pull/1739).
+- Patrick Walton removed the need to explicitly create leaf sets during
+parallel layout in [#1700](https://github.com/mozilla/servo/pull/1700).
+- Harrison Gentry cleaned up some type names in
+[#1781](https://github.com/mozilla/servo/pull/1781).
+- Keegan McAllister moved fontconfig in-tree on Linux in order to get a
+thread-safe implementation in
+[#1780](https://github.com/mozilla/servo/pull/1780).
+- Saurabh Anand made the DOM parser pass in the correct content types in
+[#1775](https://github.com/mozilla/servo/pull/1775).
+- tgkokk fixed the bindings generator to no longer produce .pyc files in
+[#1735](https://github.com/mozilla/servo/pull/1735).
+
+
+## New contributors
+- Saurabh Anand (sawrubh)
+- Harrison Gentry (hgentry)
+- tgkokk
+
+## Meetings
+
+At this week's
+[meeting](https://github.com/mozilla/servo/wiki/Meeting-2014-02-24), we
+discussed embedding, the JSManaged conversion, a Rust upgrade, vtables, and
+recruiting efforts.
+
+# Announcements, etc
+
+- [RFC: Opt-in Builtin
+Traits](http://smallcultfollowing.com/babysteps/blog/2014/02/28/rust-rfc-opt-in-builtin-traits/)
+- [Structural single-inheritance
+counter-proposal](https://github.com/mozilla/rust/issues/9912#issuecomment-36073562)
+- [RFC: Stronger Guarantees for Mutable
+Borrows](http://smallcultfollowing.com/babysteps/blog/2014/02/25/rust-rfc-stronger-guarantees-for-mutable-borrows/)
+- [Dark](https://github.com/kvark/dark), an experimental universal data
+compressor based on the BWT-DC scheme
+- [cargo-lite
+v1.1.0 release](https://mail.mozilla.org/pipermail/rust-dev/2014-March/008832.html)
+- [Revamped parallel layout in
+servo](http://pcwalton.github.io/blog/2014/02/25/revamped-parallel-layout-in-servo/)
+- [February Bay Area Rust
+Recording](https://air.mozilla.org/rust-meetup-february-2014/)
+- [A bloom filter implementation](https://github.com/brianmadden/rust-bloom-filter)
+- [A tweening library](https://github.com/hoeppnertill/redox-tween)