Skip to content

Commit 5ed7d4e

Browse files
committed
Merge pull request #31917 from brson/beta-next
Beta next
2 parents edf0d32 + 45b7e12 commit 5ed7d4e

File tree

3 files changed

+359
-7
lines changed

3 files changed

+359
-7
lines changed

RELEASES.md

+352
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,355 @@
1+
Version 1.7.0 (2016-03-03)
2+
==========================
3+
4+
Language
5+
--------
6+
7+
* Soundness fixes to the interactions between associated types and
8+
lifetimes, specified in [RFC 1214], [now generate errors][1.7sf] for
9+
code that violates the new rules. This is a significant change that
10+
is known to break existing code, so it has emitted warnings for the
11+
new error cases since 1.4 to give crate authors time to adapt. The
12+
details of what is changing are subtle; read the RFC for more.
13+
14+
Libraries
15+
---------
16+
17+
* Stabilized APIs:
18+
[`Path::strip_prefix`][] (renamed from relative_from),
19+
[`path::StripPrefixError`][] (new error type returned from strip_prefix),
20+
[`Ipv4Addr::is_loopback`],
21+
[`Ipv4Addr::is_private`],
22+
[`Ipv4Addr::is_link_local`],
23+
[`Ipv4Addr::is_multicast`],
24+
[`Ipv4Addr::is_broadcast`],
25+
[`Ipv4Addr::is_documentation`],
26+
[`Ipv6Addr::is_unspecified`],
27+
[`Ipv6Addr::is_loopback`],
28+
[`Ipv6Addr::is_multicast`],
29+
[`Vec::as_slice`],
30+
[`Vec::as_mut_slice`],
31+
[`String::as_str`],
32+
[`String::as_mut_str`],
33+
`<[T]>::`[`clone_from_slice`], which now requires the two slices to
34+
be the same length
35+
`<[T]>::`[`sort_by_key`],
36+
[`i32::checked_rem`],
37+
[`i32::checked_neg`],
38+
[`i32::checked_shl`],
39+
[`i32::checked_shr`],
40+
[`i32::saturating_mul`],
41+
[`i32::overflowing_add`],
42+
[`i32::overflowing_sub`],
43+
[`i32::overflowing_mul`],
44+
[`i32::overflowing_div`],
45+
[`i32::overflowing_rem`],
46+
[`i32::overflowing_neg`],
47+
[`i32::overflowing_shl`],
48+
[`i32::overflowing_shr`],
49+
[`u32::checked_rem`],
50+
[`u32::checked_neg`],
51+
[`u32::checked_shl`],
52+
[`u32::checked_shl`],
53+
[`u32::saturating_mul`],
54+
[`u32::overflowing_add`],
55+
[`u32::overflowing_sub`],
56+
[`u32::overflowing_mul`],
57+
[`u32::overflowing_div`],
58+
[`u32::overflowing_rem`],
59+
[`u32::overflowing_neg`],
60+
[`u32::overflowing_shl`],
61+
[`u32::overflowing_shr`],
62+
checked, saturated, and overflowing operations for other primitive types,
63+
[`ffi::IntoStringError`],
64+
[`CString::into_string`],
65+
[`CString::into_bytes`],
66+
[`CString::into_bytes_with_nul`],
67+
`From<CString> for Vec<u8>`,
68+
[`IntoStringError::into_cstring`],
69+
[`IntoStringError::utf8_error`],
70+
`Error for IntoStringError`.
71+
* [Validating UTF-8 is faster by a factor of between 7 and 14x for
72+
ASCII input][1.7utf8]. This means that creating `String`s and `str`s
73+
from bytes is faster.
74+
* [The performance of `LineWriter` (and thus `io::stdout`) was
75+
improved by using `memchr` to search for newlines][1.7m].
76+
* [`f32::to_degrees` and `f32::to_radians` are stable][1.7f]. The
77+
`f64` variants were stabilized previously.
78+
* [`BTreeMap` was rewritten to use less memory improve performance of
79+
insertion and iteration, the latter by as much as 5x`][1.7bm].
80+
* [`BTreeSet` and its iterators, `Iter`, `IntoIter`, and `Range` are
81+
covariant over their contained type][1.7bt].
82+
* [`LinkedList` and its iterators, `Iter` and `IntoIter` are covariant
83+
over their contained type][1.7ll].
84+
* [`str::replace` now accepts a `Pattern`][1.7rp], like other string
85+
searching methods.
86+
* [`Any` is implemented for unsized types][1.7a].
87+
* [`Hash` is implemented for `Duration`][1.7h].
88+
89+
Misc
90+
----
91+
92+
* [The `--error-format=json` flag to `rustc` causes it to emit errors
93+
in JSON format][1.7j]. This is an unstable flag and so also requires
94+
the `-Z unstable-options` flag.
95+
* [When running tests with `--test`, rustdoc will pass `--cfg`
96+
arguments to the compiler][1.7dt].
97+
* [The compiler is built with RPATH information by default][1.7rpa].
98+
This means that it will be possible to run `rustc` when installed in
99+
unusual configurations without configuring the dynamic linker search
100+
path explicitly.
101+
* [`rustc` passes `--enable-new-dtags` to GNU ld][1.7dta]. This makes
102+
any RPATH entries (emitted with `-C rpath`) *not* take precedence
103+
over `LD_LIBRARY_PATH`.
104+
105+
Cargo
106+
-----
107+
108+
* [`cargo rustc` accepts a `--profile` flag that runs `rustc` under
109+
any of the compilation profiles, 'dev', 'bench', or 'test'][1.7cp].
110+
* [The `rerun-if-changed` build script directive no longer causes the
111+
build script to incorrectly run twice in certain scenarios][1.7rr].
112+
113+
Compatibility Notes
114+
-------------------
115+
116+
* [Several bugs in the compiler's visibility calculations were
117+
fixed][1.7v]. Since this was found to break significant amounts of
118+
code, the new errors will be emitted as warnings for several release
119+
cycles, under the `private_in_public` lint.
120+
* Defaulted type parameters were accidentally accepted in positions
121+
that were not intended. In this release, [defaulted type parameters
122+
appearing outside of type definitions will generate a
123+
warning][1.7d], which will become an error in future releases.
124+
* [Parsing "." as a float results in an error instead of
125+
0][1.7p]. That is, `".".parse::<f32>()` returns `Err`, not `Ok(0)`.
126+
* [Borrows of closure parameters may not outlive the closure][1.7bc].
127+
128+
[1.7a]: https://github.com/rust-lang/rust/pull/30928
129+
[1.7bc]: https://github.com/rust-lang/rust/pull/30341
130+
[1.7bm]: https://github.com/rust-lang/rust/pull/30426
131+
[1.7bt]: https://github.com/rust-lang/rust/pull/30998
132+
[1.7cp]: https://github.com/rust-lang/cargo/pull/2224
133+
[1.7d]: https://github.com/rust-lang/rust/pull/30724
134+
[1.7dt]: https://github.com/rust-lang/rust/pull/30372
135+
[1.7dta]: https://github.com/rust-lang/rust/pull/30394
136+
[1.7f]: https://github.com/rust-lang/rust/pull/30672
137+
[1.7h]: https://github.com/rust-lang/rust/pull/30818
138+
[1.7j]: https://github.com/rust-lang/rust/pull/30711
139+
[1.7ll]: https://github.com/rust-lang/rust/pull/30663
140+
[1.7m]: https://github.com/rust-lang/rust/pull/30381
141+
[1.7p]: https://github.com/rust-lang/rust/pull/30681
142+
[1.7rp]: https://github.com/rust-lang/rust/pull/29498
143+
[1.7rpa]: https://github.com/rust-lang/rust/pull/30353
144+
[1.7rr]: https://github.com/rust-lang/cargo/pull/2279
145+
[1.7sf]: https://github.com/rust-lang/rust/pull/30389
146+
[1.7utf8]: https://github.com/rust-lang/rust/pull/30740
147+
[1.7v]: https://github.com/rust-lang/rust/pull/29973
148+
[RFC 1214]: https://github.com/rust-lang/rfcs/blob/master/text/1214-projections-lifetimes-and-wf.md
149+
[`clone_from_slice`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.clone_from_slice
150+
[`sort_by_key`]: http://doc.rust-lang.org/nightly/std/primitive.slice.html#method.sort_by_key
151+
[`CString::into_bytes_with_nul`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_bytes_with_nul
152+
[`CString::into_bytes`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_bytes
153+
[`CString::into_string`]: http://doc.rust-lang.org/nightly/std/ffi/struct.CString.html#method.into_string
154+
[`IntoStringError::into_cstring`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html#method.into_cstring
155+
[`IntoStringError::utf8_error`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html#method.utf8_error
156+
[`Ipv4Addr::is_broadcast`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_broadcast
157+
[`Ipv4Addr::is_documentation`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_documentation
158+
[`Ipv4Addr::is_link_local`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_link_local
159+
[`Ipv4Addr::is_loopback`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_loopback
160+
[`Ipv4Addr::is_multicast`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_multicast
161+
[`Ipv4Addr::is_private`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv4Addr.html#method.is_private
162+
[`Ipv6Addr::is_loopback`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_loopback
163+
[`Ipv6Addr::is_multicast`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_multicast
164+
[`Ipv6Addr::is_unspecified`]: http://doc.rust-lang.org/nightly/std/net/struct.Ipv6Addr.html#method.is_unspecified
165+
[`Path::strip_prefix`]: http://doc.rust-lang.org/nightly/std/path/struct.Path.html#method.strip_prefix
166+
[`String::as_mut_str`]: http://doc.rust-lang.org/nightly/std/string/struct.String.html#method.as_mut_str
167+
[`String::as_str`]: http://doc.rust-lang.org/nightly/std/string/struct.String.html#method.as_str
168+
[`Vec::as_mut_slice`]: http://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.as_mut_slice
169+
[`Vec::as_slice`]: http://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.as_slice
170+
[`ffi::IntoStringError`]: http://doc.rust-lang.org/nightly/std/ffi/struct.IntoStringError.html
171+
[`i32::checked_neg`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_neg
172+
[`i32::checked_rem`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_rem
173+
[`i32::checked_shl`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_shl
174+
[`i32::checked_shr`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.checked_shr
175+
[`i32::overflowing_add`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_add
176+
[`i32::overflowing_div`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_div
177+
[`i32::overflowing_mul`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_mul
178+
[`i32::overflowing_neg`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_neg
179+
[`i32::overflowing_rem`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_rem
180+
[`i32::overflowing_shl`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_shl
181+
[`i32::overflowing_shr`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_shr
182+
[`i32::overflowing_sub`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.overflowing_sub
183+
[`i32::saturating_mul`]: http://doc.rust-lang.org/nightly/std/primitive.i32.html#method.saturating_mul
184+
[`path::StripPrefixError`]: http://doc.rust-lang.org/nightly/std/path/struct.StripPrefixError.html
185+
[`u32::checked_rem`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_rem
186+
[`u32::checked_shl`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.checked_shl
187+
[`u32::overflowing_add`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_add
188+
[`u32::overflowing_div`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_div
189+
[`u32::overflowing_mul`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_mul
190+
[`u32::overflowing_neg`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_neg
191+
[`u32::overflowing_rem`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_rem
192+
[`u32::overflowing_shl`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_shl
193+
[`u32::overflowing_shr`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_shr
194+
[`u32::overflowing_sub`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.overflowing_sub
195+
[`u32::saturating_mul`]: http://doc.rust-lang.org/nightly/std/primitive.u32.html#method.saturating_mul
196+
197+
198+
Version 1.6.0 (2016-01-21)
199+
==========================
200+
201+
Language
202+
--------
203+
204+
* The `#![no_std]` attribute causes a crate to not be linked to the
205+
standard library, but only the [core library][1.6co], as described
206+
in [RFC 1184]. The core library defines common types and traits but
207+
has no platform dependencies whatsoever, and is the basis for Rust
208+
software in environments that cannot support a full port of the
209+
standard library, such as operating systems. Most of the core
210+
library is now stable.
211+
212+
Libraries
213+
---------
214+
215+
* Stabilized APIs:
216+
[`Read::read_exact`],
217+
[`ErrorKind::UnexpectedEof`][] (renamed from `UnexpectedEOF`),
218+
[`fs::DirBuilder`], [`fs::DirBuilder::new`],
219+
[`fs::DirBuilder::recursive`], [`fs::DirBuilder::create`],
220+
[`os::unix::fs::DirBuilderExt`],
221+
[`os::unix::fs::DirBuilderExt::mode`], [`vec::Drain`],
222+
[`vec::Vec::drain`], [`string::Drain`], [`string::String::drain`],
223+
[`vec_deque::Drain`], [`vec_deque::VecDeque::drain`],
224+
[`collections::hash_map::Drain`],
225+
[`collections::hash_map::HashMap::drain`],
226+
[`collections::hash_set::Drain`],
227+
[`collections::hash_set::HashSet::drain`],
228+
[`collections::binary_heap::Drain`],
229+
[`collections::binary_heap::BinaryHeap::drain`],
230+
[`Vec::extend_from_slice`][] (renamed from `push_all`),
231+
[`Mutex::get_mut`], [`Mutex::into_inner`], [`RwLock::get_mut`],
232+
[`RwLock::into_inner`],
233+
[`Iterator::min_by_key`][] (renamed from `min_by`),
234+
[`Iterator::max_by_key`][] (renamed from `max_by`).
235+
* The [core library][1.6co] is stable, as are most of its APIs.
236+
* [The `assert_eq!` macro supports arguments that don't implement
237+
`Sized`][1.6ae], such as arrays. In this way it behaves more like
238+
`assert!`.
239+
* Several timer functions that take duration in milliseconds [are
240+
deprecated in favor of those that take `Duration`][1.6ms]. These
241+
include `Condvar::wait_timeout_ms`, `thread::sleep_ms`, and
242+
`thread::park_timeout_ms`.
243+
* The algorithm by which `Vec` reserves additional elements was
244+
[tweaked to not allocate excessive space][1.6a] while still growing
245+
exponentially.
246+
* `From` conversions are [implemented from integers to floats][1.6f]
247+
in cases where the conversion is lossless. Thus they are not
248+
implemented for 32-bit ints to `f32`, nor for 64-bit ints to `f32`
249+
or `f64`. They are also not implemented for `isize` and `usize`
250+
because the implementations would be platform-specific. `From` is
251+
also implemented from `f32` to `f64`.
252+
* `From<&Path>` and `From<PathBuf>` are implemented for `Cow<Path>`.
253+
* `From<T>` is implemented for `Box<T>`, `Rc<T>` and `Arc<T>`.
254+
* `IntoIterator` is implemented for `&PathBuf` and `&Path`.
255+
* [`BinaryHeap` was refactored][1.6bh] for modest performance
256+
improvements.
257+
* Sorting slices that are already sorted [is 50% faster in some
258+
cases][1.6s].
259+
260+
Cargo
261+
-----
262+
263+
* Cargo will look in `$CARGO_HOME/bin` for subcommands [by default][1.6c].
264+
* Cargo build scripts can specify their dependencies by emitting the
265+
[`rerun-if-changed`][1.6rr] key.
266+
* crates.io will reject publication of crates with dependencies that
267+
have a wildcard version constraint. Crates with wildcard
268+
dependencies were seen to cause a variety of problems, as described
269+
in [RFC 1241]. Since 1.5 publication of such crates has emitted a
270+
warning.
271+
* `cargo clean` [accepts a `--release` flag][1.6cc] to clean the
272+
release folder. A variety of artifacts that Cargo failed to clean
273+
are now correctly deleted.
274+
275+
Misc
276+
----
277+
278+
* The `unreachable_code` lint [warns when a function call's argument
279+
diverges][1.6dv].
280+
* The parser indicates [failures that may be caused by
281+
confusingly-similar Unicode characters][1.6uc]
282+
* Certain macro errors [are reported at definition time][1.6m], not
283+
expansion.
284+
285+
Compatibility Notes
286+
-------------------
287+
288+
* The compiler no longer makes use of the [`RUST_PATH`][1.6rp]
289+
environment variable when locating crates. This was a pre-cargo
290+
feature for integrating with the package manager that was
291+
accidentally never removed.
292+
* [A number of bugs were fixed in the privacy checker][1.6p] that
293+
could cause previously-accepted code to break.
294+
* [Modules and unit/tuple structs may not share the same name][1.6ts].
295+
* [Bugs in pattern matching unit structs were fixed][1.6us]. The tuple
296+
struct pattern syntax (`Foo(..)`) can no longer be used to match
297+
unit structs. This is a warning now, but will become an error in
298+
future releases. Patterns that share the same name as a const are
299+
now an error.
300+
* A bug was fixed that causes [rustc not to apply default type
301+
parameters][1.6xc] when resolving certain method implementations of
302+
traits defined in other crates.
303+
304+
[1.6a]: https://github.com/rust-lang/rust/pull/29454
305+
[1.6ae]: https://github.com/rust-lang/rust/pull/29770
306+
[1.6bh]: https://github.com/rust-lang/rust/pull/29811
307+
[1.6c]: https://github.com/rust-lang/cargo/pull/2192
308+
[1.6cc]: https://github.com/rust-lang/cargo/pull/2131
309+
[1.6co]: http://doc.rust-lang.org/beta/core/index.html
310+
[1.6dv]: https://github.com/rust-lang/rust/pull/30000
311+
[1.6f]: https://github.com/rust-lang/rust/pull/29129
312+
[1.6m]: https://github.com/rust-lang/rust/pull/29828
313+
[1.6ms]: https://github.com/rust-lang/rust/pull/29604
314+
[1.6p]: https://github.com/rust-lang/rust/pull/29726
315+
[1.6rp]: https://github.com/rust-lang/rust/pull/30034
316+
[1.6rr]: https://github.com/rust-lang/cargo/pull/2134
317+
[1.6s]: https://github.com/rust-lang/rust/pull/29675
318+
[1.6ts]: https://github.com/rust-lang/rust/issues/21546
319+
[1.6uc]: https://github.com/rust-lang/rust/pull/29837
320+
[1.6us]: https://github.com/rust-lang/rust/pull/29383
321+
[1.6xc]: https://github.com/rust-lang/rust/issues/30123
322+
[RFC 1184]: https://github.com/rust-lang/rfcs/blob/master/text/1184-stabilize-no_std.md
323+
[RFC 1241]: https://github.com/rust-lang/rfcs/blob/master/text/1241-no-wildcard-deps.md
324+
[`ErrorKind::UnexpectedEof`]: http://doc.rust-lang.org/nightly/std/io/enum.ErrorKind.html#variant.UnexpectedEof
325+
[`Iterator::max_by_key`]: http://doc.rust-lang.org/nightly/std/iter/trait.Iterator.html#method.max_by_key
326+
[`Iterator::min_by_key`]: http://doc.rust-lang.org/nightly/std/iter/trait.Iterator.html#method.min_by_key
327+
[`Mutex::get_mut`]: http://doc.rust-lang.org/nightly/std/sync/struct.Mutex.html#method.get_mut
328+
[`Mutex::into_inner`]: http://doc.rust-lang.org/nightly/std/sync/struct.Mutex.html#method.into_inner
329+
[`Read::read_exact`]: http://doc.rust-lang.org/nightly/std/io/trait.Read.html#method.read_exact
330+
[`RwLock::get_mut`]: http://doc.rust-lang.org/nightly/std/sync/struct.RwLock.html#method.get_mut
331+
[`RwLock::into_inner`]: http://doc.rust-lang.org/nightly/std/sync/struct.RwLock.html#method.into_inner
332+
[`Vec::extend_from_slice`]: http://doc.rust-lang.org/nightly/collections/vec/struct.Vec.html#method.extend_from_slice
333+
[`collections::binary_heap::BinaryHeap::drain`]: http://doc.rust-lang.org/nightly/std/collections/binary_heap/struct.BinaryHeap.html#method.drain
334+
[`collections::binary_heap::Drain`]: http://doc.rust-lang.org/nightly/std/collections/binary_heap/struct.Drain.html
335+
[`collections::hash_map::Drain`]: http://doc.rust-lang.org/nightly/std/collections/hash_map/struct.Drain.html
336+
[`collections::hash_map::HashMap::drain`]: http://doc.rust-lang.org/nightly/std/collections/hash_map/struct.HashMap.html#method.drain
337+
[`collections::hash_set::Drain`]: http://doc.rust-lang.org/nightly/std/collections/hash_set/struct.Drain.html
338+
[`collections::hash_set::HashSet::drain`]: http://doc.rust-lang.org/nightly/std/collections/hash_set/struct.HashSet.html#method.drain
339+
[`fs::DirBuilder::create`]: http://doc.rust-lang.org/nightly/std/fs/struct.DirBuilder.html#method.create
340+
[`fs::DirBuilder::new`]: http://doc.rust-lang.org/nightly/std/fs/struct.DirBuilder.html#method.new
341+
[`fs::DirBuilder::recursive`]: http://doc.rust-lang.org/nightly/std/fs/struct.DirBuilder.html#method.recursive
342+
[`fs::DirBuilder`]: http://doc.rust-lang.org/nightly/std/fs/struct.DirBuilder.html
343+
[`os::unix::fs::DirBuilderExt::mode`]: http://doc.rust-lang.org/nightly/std/os/unix/fs/trait.DirBuilderExt.html#tymethod.mode
344+
[`os::unix::fs::DirBuilderExt`]: http://doc.rust-lang.org/nightly/std/os/unix/fs/trait.DirBuilderExt.html
345+
[`string::Drain`]: http://doc.rust-lang.org/nightly/std/string/struct.Drain.html
346+
[`string::String::drain`]: http://doc.rust-lang.org/nightly/std/string/struct.String.html#method.drain
347+
[`vec::Drain`]: http://doc.rust-lang.org/nightly/std/vec/struct.Drain.html
348+
[`vec::Vec::drain`]: http://doc.rust-lang.org/nightly/std/vec/struct.Vec.html#method.drain
349+
[`vec_deque::Drain`]: http://doc.rust-lang.org/nightly/std/collections/vec_deque/struct.Drain.html
350+
[`vec_deque::VecDeque::drain`]: http://doc.rust-lang.org/nightly/std/collections/vec_deque/struct.VecDeque.html#method.drain
351+
352+
1353
Version 1.5.0 (2015-12-10)
2354
==========================
3355

mk/main.mk

+1-1
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ CFG_RELEASE_NUM=1.7.0
1818
# An optional number to put after the label, e.g. '.2' -> '-beta.2'
1919
# NB Make sure it starts with a dot to conform to semver pre-release
2020
# versions (section 9)
21-
CFG_PRERELEASE_VERSION=.3
21+
CFG_PRERELEASE_VERSION=.4
2222

2323
# Append a version-dependent hash to each library, so we can install different
2424
# versions in the same place

0 commit comments

Comments
 (0)