blob: 095994dedb6d36cccc58f017d4a0c4bddb8530b4 (
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
|
Title: This Week in Rust 14
Date: 2013-09-07 18:30
Category: This Week in Rust
Welcome to another *This Week in Rust*.
<!-- more -->
# What's cooking in master?
65 pull requests were merged this week, and bors has had some idle time when
there wasn't anything approved in the queue.
## Breaking changes
- `std::os::glob` has been replaced with a [pure Rust
version](https://github.com/mozilla/rust/pull/8914), for cross-platform and
compatability reasons.
- `std::str::from_bytes` has been
[renamed](https://github.com/mozilla/rust/pull/8997) to
`std::str::from_utf8`, to be explicit about what it accepts.
- Casting to bool with `as` is [no longer
allowed](https://github.com/mozilla/rust/pull/8980), and surrogate
characters are no longer allowed in strings.
- char is [no longer](https://github.com/mozilla/rust/pull/8974) treated as an
integer type (meaning it can't be casted to/from them), which removes the
ability for safe code to create invalid characters.
- Opening a listening socket and actually listening on it [have been
split](https://github.com/mozilla/rust/pull/8954). If you're jiggy with the
jive, listen and accept are now separate operations. (*ed*: this used to say
bind and accept wereseparate; thanks to ecr for the correction.)
## Additions
- `let` var hygiene has [landed](https://github.com/mozilla/rust/pull/9026).
I'm sure this has cool implications, but I don't really know what they are.
- An [`export_name` attribute](https://github.com/mozilla/rust/pull/8903) has
been added to control what symbol name something is exported as (similar to
`no_mangle`).
- An `ExactSize` trait [has been
added](https://github.com/mozilla/rust/pull/8884) to mark an iterator that
always accurately reports its size in the `size_hint` method.
- `ToStr` has been [implemented](https://github.com/mozilla/rust/pull/8960)
for char and Ascii.
- Safe accessors of `MutexArc` [have been
implemented](https://github.com/mozilla/rust/pull/8966)
- A bytes iterator [has been added](https://github.com/mozilla/rust/pull/8935)
for newrt readers.
- Stream is [automatically
implemented](https://github.com/mozilla/rust/pull/8984) for types which
implement Reader and Writer from newrt.
- An `unreachable` macro [has been
added](https://github.com/mozilla/rust/pull/8992) for better error reporting
than a function could do.
- newrt [can now do](https://github.com/mozilla/rust/pull/9000) simple DNS
resolution.
- strptime/strftime [now support](https://github.com/mozilla/rust/pull/9016)
fractional seconds, out to tenths of a nanosecond.
## Changes etc
- Name mangling [has been
improved](https://github.com/mozilla/rust/pull/8875).
- `rust_log.cpp` [has been
converted](https://github.com/mozilla/rust/pull/8880) into pure Rust.
- Debuginfo [now does closure
capture](https://github.com/mozilla/rust/pull/8855) and very large structs.
- A [bunch](https://github.com/mozilla/rust/pull/8947)
[of](https://github.com/mozilla/rust/pull/8927)
[repr](https://github.com/mozilla/rust/pull/8928) improvements landed.
# Meeting
There was no meteting this week listed on the wiki or that I saw.
# Projects
- [rust-nanomsg](https://github.com/glycerine/rust-nanomsg) - bindings to the
nanomsg library.
|