1
- Version 0.11 (July 2014)
1
+ Version 0.11.0 (July 2014)
2
2
-------------------------
3
3
4
- * ~1700 cahnges , numerous bugfixes
4
+ * ~1700 changes , numerous bugfixes
5
5
6
6
* Language
7
7
* ~[T] has been removed from the language. This type is superseded by
@@ -13,26 +13,25 @@ Version 0.11 (July 2014)
13
13
* @T has been removed from the language. This type is superseded by the
14
14
standard library's std::gc::Gc<T> type.
15
15
* Struct fields are now all private by default.
16
- * Vector indices and shift amounts are both required to be a `uint` now
16
+ * Vector indices and shift amounts are both required to be a `uint`
17
17
instead of any integral type.
18
18
* Byte character, byte string, and raw byte string literals are now all
19
19
supported by prefixing the normal literal with a `b`.
20
20
* Multiple ABIs are no longer allowed in an ABI string
21
- * The syntax for lifetimes on clousres /procedures has been tweaked
22
- slightly.
23
- * Floating point modulus has been removed from the language, it is still
24
- provided by a library implementation, however .
21
+ * The syntax for lifetimes on closures /procedures has been tweaked
22
+ slightly: `<'a>|A, B|: 'b + K -> T`
23
+ * Floating point modulus has been removed from the language; however it
24
+ is still provided by a library implementation.
25
25
* Private enum variants are now disallowed.
26
26
* The `priv` keyword has been removed from the language.
27
27
* A closure can no longer be invoked through a &-pointer.
28
28
* The `use foo, bar, baz;` syntax has been removed from the language.
29
29
* The transmute intrinsic no longer works on type parameters.
30
30
* Statics now allow blocks/items in their definition.
31
31
* Trait bounds are separated from objects with + instead of : now.
32
- * Mutably borrowed objects can no longer be read while they are
33
- borrowed.
32
+ * Objects can no longer be read while they are mutably borrowed.
34
33
* The address of a static is now marked as insignificant unless the
35
- #[inline(never)] attribute is placed on a static .
34
+ #[inline(never)] attribute is placed it .
36
35
* The #[unsafe_destructor] attribute is now behind a feature gate.
37
36
* Struct literals are no longer allowed in ambiguous positions such as
38
37
if, while, match, and for..in.
@@ -48,13 +47,13 @@ Version 0.11 (July 2014)
48
47
* Libraries
49
48
* The standard library is now a "facade" over a number of underlying
50
49
libraries. This means that development on the standard library should
51
- be speeder due to less to compile , as well as a clearer line between
50
+ be speeder due to smaller crates , as well as a clearer line between
52
51
all dependencies.
53
52
* A new library, libcore, lives under the standard library's facade
54
53
which is Rust's "0-assumption" library, suitable for embedded and
55
54
kernel development for example.
56
55
* A regex crate has been added to the standard distribution. This crate
57
- includes statically compiled regulard expressions.
56
+ includes statically compiled regular expressions.
58
57
* The unwrap/unwrap_err methods on Result require a Show bound for
59
58
better error messages.
60
59
* The return types of the std::comm primitives have been centralized
@@ -72,11 +71,11 @@ Version 0.11 (July 2014)
72
71
* A graphviz crate has been added for creating .dot files.
73
72
* The std::cast module has been migrated into std::mem.
74
73
* The std::local_data api has been migrated from freestanding functions
75
- to based on methods.
74
+ to being based on methods.
76
75
* The Pod trait has been renamed to Copy.
77
76
* jemalloc has been added as the default allocator for types.
78
- * The api for allocating memory in rust has been modified for sized
79
- deallocation as well as using proper alignment.
77
+ * The API for allocating memory has been changed to use proper alignment
78
+ and sized deallocation
80
79
* Connecting a TcpStream or binding a TcpListener is now based on a
81
80
string address and a u16 port. This allows connecting to a hostname as
82
81
opposed to an IP.
@@ -100,11 +99,11 @@ Version 0.11 (July 2014)
100
99
discovery of breaking changes.
101
100
* The compiler will now try to suggest how to annotate lifetimes if a
102
101
lifetime-related error occurs.
103
- * Debug info continues to be improved greatly with better support for
104
- situations such as LTO and general bug fixes .
102
+ * Debug info continues to be improved greatly with general bug fixes and
103
+ better support for situations like link time optimization (LTO) .
105
104
* Usage of syntax extensions when cross-compiling has been fixed.
106
- * The equivalent of ffunction-sections and fdata- sections have been
107
- enabled by default with the equivalent of --gc-sections.
105
+ * Functionality equivalent to GCC & Clang's -ffunction- sections,
106
+ -fdata-sections and --gc-sections has been enabled by default
108
107
* The compiler is now stricter about where it will load module files
109
108
from when a module is declared via `mod foo;`.
110
109
* The #[phase(syntax)] attribute has been renamed to #[phase(plugin)].
@@ -128,7 +127,7 @@ Version 0.11 (July 2014)
128
127
* Cross-compiling to mipsel is now supported.
129
128
* Stability attributes are now inherited by default and no longer apply
130
129
to intra-crate usage, only inter-crate usage.
131
- * Error message related to non-exhaustive match statements have been
130
+ * Error message related to non-exhaustive match expressions have been
132
131
greatly improved.
133
132
134
133
Version 0.10 (April 2014)
0 commit comments