summaryrefslogtreecommitdiffstats
path: root/content/2014-04-12-this-week-in-rust.markdown
blob: 1a059292f474d45a600c968bfd8a9e31ff63bab4 (plain)
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
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
Title: This Week in Rust 45
Date: 2014-04-13 23: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:
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?

64 pull requests were merged this week.

## Breaking Changes

- `BenchHarness` [has been
  renamed](https://github.com/mozilla/rust/pull/13236) to `Bencher`
- The `push_str` and `push_char` methods on `~str` [have been
  removed](https://github.com/mozilla/rust/pull/13440), and a `StrBuf` type
  added, as an analog to `Vec`.
- Duplicate moves from the variables a `proc` captures [are no longer
  allowed](https://github.com/mozilla/rust/pull/13413).
- `std::libc` [has been extracted](https://github.com/mozilla/rust/pull/13315)
  into its own crate.
- Various bugs in resolve [have been
  fixed](https://github.com/mozilla/rust/pull/13409). The fixes seem
  relatively obscure, but they're well documented if your code breaks.
-  The functions in `flate` now [return Option instead of
   failing](https://github.com/mozilla/rust/pull/13389).

## Other Changes

- `TotalEq` and `TotalOrd` [now
  document](https://github.com/mozilla/rust/pull/13358) exactly what the types
  implementing them must guarantee.
- Some bugs with debuginfo [have been
  fixed](https://github.com/mozilla/rust/pull/13441). In particular, the
  annoying link failure with debuginfo has been fixed.
- Relocation model [is now
  configurable](https://github.com/mozilla/rust/pull/13340) with `-C
  relocation-model`.

Additionally, a lot of cleanup happened. Not much of it sticks out particularly.

## New Contributors

- Boris Egorov
- Jim Radford
- Joseph Crail
- JustAPerson
- Kasey Carrothers
- Kevin Butler
- Manish Goregaokar
- Tobba
- free-Runner

# Weekly Meeting

The weekly meeting was cancelled due to the videoconference system being down
for mitigating the Heartbleed vulnerability, as well as some team members
travelling or otherwise unavailable.

# RFCs

Some new RFCs:

- [Extend nullable pointer optimization to library
  types](https://github.com/rust-lang/rfcs/pull/36)
- [Extended method lookup](https://github.com/rust-lang/rfcs/pull/37)
- [Inherit use](https://github.com/rust-lang/rfcs/pull/38)
- [Allocator trait](https://github.com/rust-lang/rfcs/pull/39)
- [Make libstd a facade](https://github.com/rust-lang/rfcs/pull/40)
- [`Invalid` trait for space optimization of
  enums](https://github.com/rust-lang/rfcs/pull/41)
- [Add a regexp crate to the Rust
  distribution](https://github.com/rust-lang/rfcs/pull/42)

# Project Updates

- [Acronymy](http://www.reddit.com/r/rust/comments/22y6oy/acronymy_a_web_app_written_in_rust/)
has been released. This is a web application (in Rust!) for defining words as
acronyms. It's pretty fun.
- [bitmap](https://github.com/cmr/bitmap-rs) has been released
- [regexp](https://github.com/BurntSushi/regexp/) is a pure-Rust
  implementation of RE2, with wonderful docs and support for statically
  compiling regular expressions.
- [rust-empty](http://www.reddit.com/r/rust/comments/22uirj/rustempty_02_released/)
  has been updated to 0.2.
- [inotify-rs](https://github.com/hannobraun/inotify-rs) has been released,
  bindings to inotify.
- [An unlambda
  interpreter](https://github.com/bwo/unlambda/blob/master/unlambda.rs)
- [RusticMineSweeper](https://github.com/aochagavia/RusticMineSweeper), a
  minesweeper clone.
- [rust-mustache](https://github.com/erickt/rust-mustache/tree/v0.3.0) has
  been updated to 0.3.0.
- [sodiumoxide](https://github.com/dnaq/sodiumoxide), the libsodium bindings,
  have been updated for 0.10.

# Community

- On April 17, there will be an [Introduction to
  Rust](http://www.meetup.com/nyccpp/events/168545012/) by Clark Gaebel in new
  York City, during a C++ meetup.
- [Bay Area
  Rust](https://mail.mozilla.org/pipermail/rust-dev/2014-April/009490.html)'s
  plans for May have been announced.

# 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 week, we landed 30 PRs.

## Notable additions

- ms2ger cleaned up all of the trailing whitespace that had been nagging down
  our Critic reviews in [#2055](https://github.com/mozilla/servo/pull/2055)
- Jacob Parker added a reftest for `setAttribute`-based restyling in
  [#2062](https://github.com/mozilla/servo/pull/2062)
- Sankha Narayan Guria removed XRay from the script codegen in
  [#2050](https://github.com/mozilla/servo/pull/2050)
- Peiyong Lin moved `namespaceURI` to the `Element` type in
  [#2063](https://github.com/mozilla/servo/pull/2063) and removed all
  remaining `@` boxes in [#2085](https://github.com/mozilla/servo/pull/2085)
- Matt Brubeck fixed bugs related clicking on links in
  [#2068](https://github.com/mozilla/servo/pull/2068) and
  [#2084](https://github.com/mozilla/servo/pull/2084) and
  [#2080](https://github.com/mozilla/servo/pull/2080)
- Hyun June Kim added support for pseudo-elements attached to inline elements
  in [#2071](https://github.com/mozilla/servo/pull/2071)
- Manish Goregaokar cleaned up a whole bunch of warnings left after our last
  Rust update in [#2045](https://github.com/mozilla/servo/pull/2045)
- Lars Bergstrom got Android support working in Servo master in
  [#2070](https://github.com/mozilla/servo/pull/2070)

## New contributors

- Jacob Parker (j3parker)

## Meetings and Notes

In this week's
[meeting](https://github.com/mozilla/servo/wiki/Meeting-2014-04-07), we went
over our [Q2 roadmap](https://github.com/mozilla/servo/wiki/Roadmap), status
of an Android buildbot, testing, and the ever-present issue of improving our
build system.