]> git.lizzy.rs Git - rust.git/log
rust.git
7 years agoRollup merge of #40281 - jimmycuadra:try-from-from-str, r=aturon
Corey Farwell [Mon, 20 Mar 2017 00:51:06 +0000 (20:51 -0400)]
Rollup merge of #40281 - jimmycuadra:try-from-from-str, r=aturon

Rename TryFrom's associated type and implement str::parse using TryFrom.

Per discussion on the tracking issue, naming `TryFrom`'s associated type `Error` is generally more consistent with similar traits in the Rust ecosystem, and what people seem to assume it should be called. It also helps disambiguate from `Result::Err`, the most common "Err".

See https://github.com/rust-lang/rust/issues/33417#issuecomment-269108968.

`TryFrom<&str>` and `FromStr` are equivalent, so have the latter provide the former to ensure that. Using `TryFrom` in the implementation of `str::parse` means types that implement either trait can use it. When we're ready to stabilize `TryFrom`, we should update `FromStr` to
suggest implementing `TryFrom<&str>` instead for new code.

See https://github.com/rust-lang/rust/issues/33417#issuecomment-277175994
and https://github.com/rust-lang/rust/issues/33417#issuecomment-277253827.

Refs #33417.

7 years agoRollup merge of #40241 - Sawyer47:fix-39997, r=alexcrichton
Corey Farwell [Mon, 20 Mar 2017 00:51:06 +0000 (20:51 -0400)]
Rollup merge of #40241 - Sawyer47:fix-39997, r=alexcrichton

Change how the `0` flag works in format!

Now it always implies right-alignment, so that padding zeroes are placed after the sign (if any) and before the digits. In other words, it always takes precedence over explicitly specified `[[fill]align]`. This also affects the '#' flag: zeroes are placed after the prefix (0b, 0o, 0x) and before the digits.

Here's a short summary of how similar format strings work in Python and Rust:

```
              :05     :<05    :>05    :^05
Python 3.6  |-0001| |-1000| |000-1| |0-100|
Rust before |-0001| |-1000| |-0001| |-0100|
Rust after  |-0001| |-0001| |-0001| |-0001|

             :#05x   :<#05x  :>#05x  :^#05x
Python 3.6  |0x001| |0x100| |000x1| |00x10|
Rust before |0x001| |0x100| |000x1| |0x010|
Rust after  |0x001| |0x001| |0x001| |0x001|
```

Fixes #39997 [breaking-change]

7 years agoAuto merge of #39799 - dpc:create_dir_all, r=alexcrichton
bors [Sun, 19 Mar 2017 21:02:53 +0000 (21:02 +0000)]
Auto merge of #39799 - dpc:create_dir_all, r=alexcrichton

Fix race condition in fs::create_dir_all

The code would crash if the directory was created after create_dir_all
checked whether the directory already existed.  This was contrary to
the documentation which claimed to create the directory if it doesn't
exist, implying (but not stating) that there would not be a failure
due to the directory existing.

7 years agoAuto merge of #40651 - frewsxcv:rollup, r=frewsxcv
bors [Sun, 19 Mar 2017 17:44:02 +0000 (17:44 +0000)]
Auto merge of #40651 - frewsxcv:rollup, r=frewsxcv

Rollup of 13 pull requests

- Successful merges: #40441, #40445, #40562, #40564, #40583, #40588, #40589, #40590, #40603, #40611, #40621, #40646, #40648
- Failed merges:

7 years agoRollup merge of #40648 - s3rvac:fix-path-docs-typo, r=frewsxcv
Corey Farwell [Sun, 19 Mar 2017 14:18:23 +0000 (10:18 -0400)]
Rollup merge of #40648 - s3rvac:fix-path-docs-typo, r=frewsxcv

Fix a typo in path.rs docs

The name of the variable used in the example is `path`, not `os_str`.

7 years agoRollup merge of #40646 - russmack:issue-40435-mention-none, r=frewsxcv
Corey Farwell [Sun, 19 Mar 2017 14:18:23 +0000 (10:18 -0400)]
Rollup merge of #40646 - russmack:issue-40435-mention-none, r=frewsxcv

Add mention of None as possible return. Closes #40435.

This commit adds a small mention to some methods that None is returned when the slice is empty.

7 years agoRollup merge of #40621 - jswalden:dependant-spelling-fix, r=sfackler
Corey Farwell [Sun, 19 Mar 2017 14:18:21 +0000 (10:18 -0400)]
Rollup merge of #40621 - jswalden:dependant-spelling-fix, r=sfackler

Fix a spelling error in HashMap documentation, and slightly reword surrounding text for precision

Noticed while reading docs just now.

It's possible that the prior wording *meant* to state that the seed's randomness depends on the exact instant that the system RNG was created, I guess.  But unless there's an API guarantee that this is the case, the wording seems over-precise.  Is there a formal API guarantee that would forbid, say, the system RNG from generating all output using the Intel RDRAND instruction?  I don't think the quality of output in that case would depend on when the RNG was created.  Yet it seems to me like it could well be a valid source of randomness when computing the initial seed.

For that reason, tying the randomness of the seed, to the quality of the RNG's output *at the precise instant the seed is computed*, seems less confining.  That instantaneous quality level could be determined by the quality at the instant the RNG was created -- but instantaneous quality need not be low for that precise reason.

7 years agoRollup merge of #40611 - ScottAbbey:patch-1, r=GuillaumeGomez
Corey Farwell [Sun, 19 Mar 2017 14:18:20 +0000 (10:18 -0400)]
Rollup merge of #40611 - ScottAbbey:patch-1, r=GuillaumeGomez

Fix typo in mutex.rs docs

This seems to match other uses of "be accessed" in the document.

7 years agoRollup merge of #40603 - QuietMisdreavus:slice-ptr-docs, r=GuillaumeGomez
Corey Farwell [Sun, 19 Mar 2017 14:18:19 +0000 (10:18 -0400)]
Rollup merge of #40603 - QuietMisdreavus:slice-ptr-docs, r=GuillaumeGomez

minor wording tweak to slice::{as_ptr, as_mut_ptr}

Per #37334, the slice-as-pointer methods mentioned that "modifying the slice may cause its buffer to be reallocated", when in fact modifying the *slice* itself would cause no such change. (It is a borrow, after all!) This is a tweak to the wording of that line to stress it's the *collection* that could cause the buffer to be reallocated.

r? @steveklabnik

7 years agoRollup merge of #40590 - z1mvader:master, r=steveklabnik
Corey Farwell [Sun, 19 Mar 2017 14:18:19 +0000 (10:18 -0400)]
Rollup merge of #40590 - z1mvader:master, r=steveklabnik

documented order of conversion between u32 an ipv4addr

This fixes https://github.com/rust-lang/rust/issues/40118

7 years agoRollup merge of #40589 - topecongiro:floating-point-literal, r=nagisa
Corey Farwell [Sun, 19 Mar 2017 14:18:18 +0000 (10:18 -0400)]
Rollup merge of #40589 - topecongiro:floating-point-literal, r=nagisa

Parse 0e+10 as a valid floating-point literal

Fixes issue #40408.

7 years agoRollup merge of #40588 - topecongiro:add-missing-tests, r=alexcrichton
Corey Farwell [Sun, 19 Mar 2017 14:18:17 +0000 (10:18 -0400)]
Rollup merge of #40588 - topecongiro:add-missing-tests, r=alexcrichton

Add a test for issue 34571

Closes #34571.

7 years agoRollup merge of #40583 - jseyfried:fix_include_macro_regression, r=nrc
Corey Farwell [Sun, 19 Mar 2017 14:18:16 +0000 (10:18 -0400)]
Rollup merge of #40583 - jseyfried:fix_include_macro_regression, r=nrc

macros: fix regression with `include!()`

Fixes #40469, a regression when `include!()`ing a `macro_rules!` containing `$crate`.
r? @nrc

7 years agoRollup merge of #40564 - GuillaumeGomez:rustdoc-const, r=frewsxcv
Corey Farwell [Sun, 19 Mar 2017 14:18:15 +0000 (10:18 -0400)]
Rollup merge of #40564 - GuillaumeGomez:rustdoc-const, r=frewsxcv

Fix const not displayed in rustdoc

Fixes #40331.

r? @rust-lang/docs

7 years agoRollup merge of #40562 - mbrubeck:bootstrap, r=alexcrichton
Corey Farwell [Sun, 19 Mar 2017 14:18:14 +0000 (10:18 -0400)]
Rollup merge of #40562 - mbrubeck:bootstrap, r=alexcrichton

Remove unused param from bootstrap::clean::rm_rf

None

7 years agoRollup merge of #40445 - estebank:issue-18150, r=jonathandturner
Corey Farwell [Sun, 19 Mar 2017 14:18:13 +0000 (10:18 -0400)]
Rollup merge of #40445 - estebank:issue-18150, r=jonathandturner

Point to let when modifying field of immutable variable

Point at the immutable local variable when trying to modify one of its
fields.

Given a file:

```rust
struct Foo {
    pub v: Vec<String>
}

fn main() {
    let f = Foo { v: Vec::new() };
    f.v.push("cat".to_string());
}
```

present the following output:

```
error: cannot borrow immutable field `f.v` as mutable
 --> file.rs:7:13
  |
6 |    let f = Foo { v: Vec::new() };
  |        - this should be `mut`
7 |    f.v.push("cat".to_string());
  |    ^^^

error: aborting due to previous error
```

Fix #27593.

7 years agoRollup merge of #40441 - tschottdorf:promotable-rfc, r=eddyb
Corey Farwell [Sun, 19 Mar 2017 14:18:12 +0000 (10:18 -0400)]
Rollup merge of #40441 - tschottdorf:promotable-rfc, r=eddyb

Add feature gate for rvalue-static-promotion

Probably needs more tests (which ones?) and there may be other things that need to be done. Also not sure whether the version that introduces the flag is really `1.15.1`.

See https://github.com/rust-lang/rfcs/pull/1414.

Updates #38865.

7 years agoAuto merge of #40346 - jseyfried:path_and_tokenstream_attr, r=nrc
bors [Sun, 19 Mar 2017 10:56:08 +0000 (10:56 +0000)]
Auto merge of #40346 - jseyfried:path_and_tokenstream_attr, r=nrc

`TokenStream`-based attributes, paths in attribute and derive macro invocations

This PR
 - refactors `Attribute` to use  `Path` and `TokenStream` instead of `MetaItem`.
 - supports macro invocation paths for attribute procedural macros.
   - e.g. `#[::foo::attr_macro] struct S;`, `#[cfg_attr(all(), foo::attr_macro)] struct S;`
 - supports macro invocation paths for derive procedural macros.
   - e.g. `#[derive(foo::Bar, super::Baz)] struct S;`
 - supports arbitrary tokens as arguments to attribute procedural macros.
   - e.g. `#[foo::attr_macro arbitrary + tokens] struct S;`
 - supports using arbitrary tokens in "inert attributes" with derive procedural macros.
   - e.g. `#[derive(Foo)] struct S(#[inert arbitrary + tokens] i32);`
where `#[proc_macro_derive(Foo, attributes(inert))]`

r? @nrc

7 years agoFix a typo in path.rs docs
Petr Zemek [Sun, 19 Mar 2017 06:02:20 +0000 (07:02 +0100)]
Fix a typo in path.rs docs

The name of the variable used in the example is `path`, not `os_str`.

7 years agoFix problems left in `concurrent_recursive_mkdir`
Dawid Ciężarkiewicz [Sun, 19 Mar 2017 04:03:51 +0000 (21:03 -0700)]
Fix problems left in `concurrent_recursive_mkdir`

Increase lifetime of `tmpdir`, and really change the length of test
path.

7 years agoAdd mention of None as possible return. Closes #40435.
Russell Mackenzie [Sun, 19 Mar 2017 01:39:11 +0000 (01:39 +0000)]
Add mention of None as possible return. Closes #40435.

7 years agoAuto merge of #40538 - aturon:stab-1.17, r=alexcrichton
bors [Sun, 19 Mar 2017 01:40:57 +0000 (01:40 +0000)]
Auto merge of #40538 - aturon:stab-1.17, r=alexcrichton

Library stabilizations for 1.17

Details of the stabilizations are available in the commits. Includes only library stabilizations; there are a couple of compiler stabilizations that should also be done for 1.17.

Will need a beta backport, which I will create after approval.

r? @alexcrichton

7 years agoAuto merge of #40625 - alexcrichton:update-cargo-again, r=alexcrichton
bors [Sat, 18 Mar 2017 15:22:29 +0000 (15:22 +0000)]
Auto merge of #40625 - alexcrichton:update-cargo-again, r=alexcrichton

Update the cargo submodule again

Unfortunately it was reverted back to a broken state in
e06c51553ddc202a79f2c0b76822ad56c4a30f80 by accident, so let's bring it forward
again!

Closes https://github.com/rust-lang/cargo/issues/3844

7 years agoParse 0e+10 as a valid floating-point literal
topecongiro [Fri, 17 Mar 2017 00:03:52 +0000 (09:03 +0900)]
Parse 0e+10 as a valid floating-point literal

Fixes issue #40408.

7 years agoUpdate the cargo submodule again
Alex Crichton [Sat, 18 Mar 2017 03:47:35 +0000 (20:47 -0700)]
Update the cargo submodule again

Unfortunately it was reverted back to a broken state in
e06c51553ddc202a79f2c0b76822ad56c4a30f80 by accident, so let's bring it forward
again!

7 years agoAuto merge of #40507 - alexcrichton:static-libcurl, r=brson
bors [Sat, 18 Mar 2017 03:31:58 +0000 (03:31 +0000)]
Auto merge of #40507 - alexcrichton:static-libcurl, r=brson

travis: Ensure cargo links libcurl statically

We don't want a dynamic dependency in the library that we ship, so link it
statically by configuring curl-sys's build script to not pick up the system
version via pkg-config.

7 years agoFix `create_dir_all("")`
Dawid Ciężarkiewicz [Wed, 15 Mar 2017 05:03:00 +0000 (22:03 -0700)]
Fix `create_dir_all("")`

Add a test for `""` and `"."`.

7 years agoReorder match checks in `create_dir_all`
Dawid Ciężarkiewicz [Wed, 15 Mar 2017 05:29:00 +0000 (22:29 -0700)]
Reorder match checks in `create_dir_all`

Avoid doing `is_dir` in the fast path.

7 years agoFix problems found on Windows in `dir_create_all`
Dawid Ciężarkiewicz [Wed, 15 Mar 2017 05:29:00 +0000 (22:29 -0700)]
Fix problems found on Windows in `dir_create_all`

Ignore the type of error altogether. The rationale is: it doesn't matter
what was the problem if the directory is there. In the previous versions
if the directory was there already we wouldn't even attempt to create
it, so we wouldn't know about the problem neither.

Make test path length smaller in `concurrent_recursive_mkdir` test.

7 years agoBreak line longer than 100 characters
Dawid Ciężarkiewicz [Tue, 14 Mar 2017 05:29:00 +0000 (22:29 -0700)]
Break line longer than 100 characters

7 years agoAdd `concurrent_recursive_mkdir` test
Dawid Ciężarkiewicz [Mon, 13 Mar 2017 06:07:16 +0000 (23:07 -0700)]
Add `concurrent_recursive_mkdir` test

7 years agoFix new version of `create_dir_all`
Dawid Ciężarkiewicz [Sat, 11 Mar 2017 16:04:30 +0000 (08:04 -0800)]
Fix new version of `create_dir_all`

It will now correctly fail on existing non-directories.

7 years agoFix race condition in fs::create_dir_all
David Roundy [Tue, 1 Dec 2015 22:29:56 +0000 (17:29 -0500)]
Fix race condition in fs::create_dir_all

It is more robust to not fail if any directory in a path was created
concurrently. This change lifts rustc internal `create_dir_racy` that
was created to handle such conditions to be new `create_dir_all`
implementation.

7 years agoAuto merge of #40482 - wagenet:fix-old-macos, r=alexcrichton
bors [Sat, 18 Mar 2017 00:40:10 +0000 (00:40 +0000)]
Auto merge of #40482 - wagenet:fix-old-macos, r=alexcrichton

Target builds for older macOS

Fix #40481

7 years agoFix a spelling error in HashMap documentation, and slightly reword it to be more...
Jeff Walden [Sat, 18 Mar 2017 00:15:01 +0000 (17:15 -0700)]
Fix a spelling error in HashMap documentation, and slightly reword it to be more precise.

7 years agoFix regression when `include!()`ing a `macro_rules!` containing a `$crate::` path.
Jeffrey Seyfried [Thu, 16 Mar 2017 20:39:41 +0000 (20:39 +0000)]
Fix regression when `include!()`ing a `macro_rules!` containing a `$crate::` path.

7 years agoMinor fixups to fix tidy errors
Alex Crichton [Wed, 15 Mar 2017 14:58:27 +0000 (07:58 -0700)]
Minor fixups to fix tidy errors

7 years agoStabilize rc_raw feature, closes #37197
Aaron Turon [Wed, 15 Mar 2017 04:10:02 +0000 (21:10 -0700)]
Stabilize rc_raw feature, closes #37197

7 years agoStabilize ordering_chaining, closes #37053
Aaron Turon [Wed, 15 Mar 2017 04:06:29 +0000 (21:06 -0700)]
Stabilize ordering_chaining, closes #37053

7 years agoStabilize btree_range, closes #27787
Aaron Turon [Wed, 15 Mar 2017 04:04:54 +0000 (21:04 -0700)]
Stabilize btree_range, closes #27787

7 years agoStabilize ptr_eq feature, closes #36497
Aaron Turon [Wed, 15 Mar 2017 04:01:18 +0000 (21:01 -0700)]
Stabilize ptr_eq feature, closes #36497

7 years agoStabilize process_abort feature, closes #37838
Aaron Turon [Wed, 15 Mar 2017 03:52:20 +0000 (20:52 -0700)]
Stabilize process_abort feature, closes #37838

7 years agoStabilize ptr_unaligned feature, closes #37955
Aaron Turon [Wed, 15 Mar 2017 03:51:29 +0000 (20:51 -0700)]
Stabilize ptr_unaligned feature, closes #37955

7 years agoStabilize expect_err feature, closes #39041
Aaron Turon [Wed, 15 Mar 2017 03:49:18 +0000 (20:49 -0700)]
Stabilize expect_err feature, closes #39041

7 years agoStabilize move_cell feature, closes #39264
Aaron Turon [Wed, 15 Mar 2017 03:46:56 +0000 (20:46 -0700)]
Stabilize move_cell feature, closes #39264

7 years agoFix typo in mutex.rs docs
ScottAbbey [Fri, 17 Mar 2017 18:27:13 +0000 (13:27 -0500)]
Fix typo in mutex.rs docs

This seems to match other uses of "be accessed" in the document.

7 years agoAuto merge of #40598 - frewsxcv:rollup, r=frewsxcv
bors [Fri, 17 Mar 2017 17:26:52 +0000 (17:26 +0000)]
Auto merge of #40598 - frewsxcv:rollup, r=frewsxcv

Rollup of 23 pull requests

- Successful merges: #40387, #40433, #40452, #40456, #40457, #40458, #40463, #40466, #40467, #40495, #40496, #40497, #40499, #40500, #40503, #40505, #40512, #40514, #40517, #40520, #40536, #40545, #40586
- Failed merges:

7 years agominor wording tweak to slice::{as_ptr, as_mut_ptr}
QuietMisdreavus [Fri, 17 Mar 2017 15:50:30 +0000 (10:50 -0500)]
minor wording tweak to slice::{as_ptr, as_mut_ptr}

7 years agoAuto merge of #40575 - alexcrichton:update-sccache, r=alexcrichton
bors [Fri, 17 Mar 2017 14:32:28 +0000 (14:32 +0000)]
Auto merge of #40575 - alexcrichton:update-sccache, r=alexcrichton

travis: Update sccache binary

I've built a local copy with mozilla/sccache#79 and mozilla/sccache#78. Let's
see if that helps #40240!

7 years agotravis: Use `hide_output` in dist-powerpc64-linux
Alex Crichton [Fri, 17 Mar 2017 14:04:18 +0000 (07:04 -0700)]
travis: Use `hide_output` in dist-powerpc64-linux

Looks like we blew the 4MB cap, so let's hide some more output.

7 years agoRollup merge of #40586 - steveklabnik:add-unstable-sort-to-unstable-book, r=frewsxcv
Corey Farwell [Fri, 17 Mar 2017 12:49:10 +0000 (08:49 -0400)]
Rollup merge of #40586 - steveklabnik:add-unstable-sort-to-unstable-book, r=frewsxcv

add sort_unstable to unstable book

cc #40585

7 years agoRollup merge of #40545 - alexcrichton:retry-download-openssl, r=nikomatsakis
Corey Farwell [Fri, 17 Mar 2017 12:49:09 +0000 (08:49 -0400)]
Rollup merge of #40545 - alexcrichton:retry-download-openssl, r=nikomatsakis

rustbuild: Retry downloads of OpenSSL source

We need this to compile Cargo and we download it at build time, but as like all
other network requests it has a chance of failing. This commit moves the source
of the tarball to a mirror (S3 seems semi-more-reliable most of the time) and
also wraps the download in a retry loop.

cc #40474

7 years agoRollup merge of #40536 - kevinmehall:dedup_docs_for_dedup_by, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:49:08 +0000 (08:49 -0400)]
Rollup merge of #40536 - kevinmehall:dedup_docs_for_dedup_by, r=steveklabnik

Fix documentation for Vec::dedup_by.

The previous docstring was copied from dedup_by_key.

7 years agoRollup merge of #40520 - steveklabnik:link-core-slice, r=alexcrichton
Corey Farwell [Fri, 17 Mar 2017 12:49:07 +0000 (08:49 -0400)]
Rollup merge of #40520 - steveklabnik:link-core-slice, r=alexcrichton

Link core::slice to std::slice

7 years agoRollup merge of #40517 - rust-lang:release-notes-tweak, r=alexcrichton
Corey Farwell [Fri, 17 Mar 2017 12:49:06 +0000 (08:49 -0400)]
Rollup merge of #40517 - rust-lang:release-notes-tweak, r=alexcrichton

Remove incorrect feature from the 1.16 relnotes

According to @golddranks https://internals.rust-lang.org/t/rust-1-16-0-prerelease-testing/4953/3

r? @brson

7 years agoRollup merge of #40514 - stjepang:inline-then-ordering, r=alexcrichton
Corey Farwell [Fri, 17 Mar 2017 12:49:05 +0000 (08:49 -0400)]
Rollup merge of #40514 - stjepang:inline-then-ordering, r=alexcrichton

Inline functions Ordering::{then, then_with}

@jongiddy noticed bad performance due to the lack of inlining on `then`
and `then_with`. I confirmed that inlining really is the culprit by
creating a custom `then` function and repeating his benchmark on my
machine with and without the `#[inline]` attribute.

The numbers were exactly the same on my machine without the attribute.
With `#[inline]` I got the same performance as I did with manually
inlined implementation.

The problem was reported in #37053.

7 years agoRollup merge of #40512 - nodakai:patch-1, r=alexcrichton
Corey Farwell [Fri, 17 Mar 2017 12:49:04 +0000 (08:49 -0400)]
Rollup merge of #40512 - nodakai:patch-1, r=alexcrichton

.gitmodules: use official URLs w/o redirect

7 years agoRollup merge of #40505 - frewsxcv:hash-docs, r=alexcrichton
Corey Farwell [Fri, 17 Mar 2017 12:49:03 +0000 (08:49 -0400)]
Rollup merge of #40505 - frewsxcv:hash-docs, r=alexcrichton

A few improvements to the `core::hash` top-level docs.

Primarily opened to address the concerns brought up in
https://github.com/rust-lang/rust/issues/40498.

* run rustfmt on code blocks
* use `DefaultHasher` instead of deprecated `SipHasher`
* rename `hash` to `calculate_hash` to prevent confusion with the `hash`
  method

7 years agoRollup merge of #40503 - swgillespie:thread-hack-removal, r=sfackler
Corey Farwell [Fri, 17 Mar 2017 12:49:02 +0000 (08:49 -0400)]
Rollup merge of #40503 - swgillespie:thread-hack-removal, r=sfackler

std: remove a workaround for privacy limitations

`std::thread::Thread` implements a non-exported `NewThread` trait to allow for internal-only use of `Thread::new`. Nowadays we have `pub(crate)`, which accomplishes the same thing but much more idiomatically.

Rustdoc handles this correctly (I checked and I didn't see `Thread::new` on the rustdoc entry for `Thread` with this change), and the stage1 `rustc` emits the correct error still (I'm assuming that the stage1 compiler uses my `libstd`?):

```
$ ./build/x86_64-apple-darwin/stage1/bin/rustc test.rs
error: method `new` is private
 --> test.rs:4:18
  |
4 |     let thread = thread::Thread::new(None);
  |                  ^^^^^^^^^^^^^^^^^^^

error: aborting due to previous error
```

7 years agoRollup merge of #40500 - estebank:turbofish-help, r=pnkfelix
Corey Farwell [Fri, 17 Mar 2017 12:49:01 +0000 (08:49 -0400)]
Rollup merge of #40500 - estebank:turbofish-help, r=pnkfelix

Point out correct turbofish usage on `Foo<Bar<Baz>>`

Whenever we parse a chain of binary operations, as long as the first
operation is `<` and the subsequent operations are either `>` or `<`,
present the following diagnostic help:

    use `::<...>` instead of `<...>` if you meant to specify type arguments

This will lead to spurious recommendations on situations like
`2 < 3 < 4` but should be clear from context that the help doesn't apply
in that case.

Fixes #40396.

7 years agoRollup merge of #40499 - ericfindlay:master, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:49:00 +0000 (08:49 -0400)]
Rollup merge of #40499 - ericfindlay:master, r=steveklabnik

Corrected very minor documentation detail about Unicode and Japanese

Japanese half-width and full-width romaji characters do have upper and lowercase according Unicode (but other Japanese characters do not). For example,
` assert_eq!('\u{FF21}'.to_lowercase().collect::<String>(),"\u{FF41}");`

r? @steveklabnik

7 years agoRollup merge of #40497 - wesleywiser:fix_sidebar, r=GuillaumeGomez
Corey Farwell [Fri, 17 Mar 2017 12:48:59 +0000 (08:48 -0400)]
Rollup merge of #40497 - wesleywiser:fix_sidebar, r=GuillaumeGomez

Fix sidebar not extending to the bottom of the page

Fixes #40459

7 years agoRollup merge of #40496 - projektir:docs_number_headings, r=frewsxcv
Corey Farwell [Fri, 17 Mar 2017 12:48:58 +0000 (08:48 -0400)]
Rollup merge of #40496 - projektir:docs_number_headings, r=frewsxcv

Using X headings #39850

Fix for issue #39850, the headings should now be 1, 2, and 3.

7 years agoRollup merge of #40495 - llogiq:format-docs, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:48:57 +0000 (08:48 -0400)]
Rollup merge of #40495 - llogiq:format-docs, r=steveklabnik

fix format grammar

This is just a trivial change to get the escaped squigglies into the grammar.

r? @steveklabnik

7 years agoRollup merge of #40467 - projektir:readme_docs, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:48:56 +0000 (08:48 -0400)]
Rollup merge of #40467 - projektir:readme_docs, r=steveklabnik

Updating README.md to point to the correct doc location

7 years agoRollup merge of #40466 - projektir:outdated_docs_highlighting, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:48:55 +0000 (08:48 -0400)]
Rollup merge of #40466 - projektir:outdated_docs_highlighting, r=steveklabnik

Remove doc about highlighting code in other languages #40301

This doesn't appear to be true any longer, so removing it to avoid confusion. See #40301

Thoughts:
- may be a good idea to remove "Let's discuss the details of these code blocks.", as there's not much being discussed at this point;
- does `text` still work?

r? @steveklabnik

7 years agoRollup merge of #40463 - tshepang:nit, r=nikomatsakis
Corey Farwell [Fri, 17 Mar 2017 12:48:54 +0000 (08:48 -0400)]
Rollup merge of #40463 - tshepang:nit, r=nikomatsakis

some style fixes

7 years agoRollup merge of #40458 - frewsxcv:frewsxcv-osstr, r=GuillaumeGomez
Corey Farwell [Fri, 17 Mar 2017 12:48:53 +0000 (08:48 -0400)]
Rollup merge of #40458 - frewsxcv:frewsxcv-osstr, r=GuillaumeGomez

Add doc examples for `OsStr`, `OsString`.

None

7 years agoRollup merge of #40457 - frewsxcv:frewsxcv-macos, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:48:52 +0000 (08:48 -0400)]
Rollup merge of #40457 - frewsxcv:frewsxcv-macos, r=steveklabnik

Update usages of 'OSX' (and other old names) to 'macOS'.

As of last year with version 'Sierra', the Mac operating system is now
called 'macOS'.

7 years agoRollup merge of #40456 - frewsxcv:frewsxcv-docs-function-parens, r=GuillaumeGomez
Corey Farwell [Fri, 17 Mar 2017 12:48:51 +0000 (08:48 -0400)]
Rollup merge of #40456 - frewsxcv:frewsxcv-docs-function-parens, r=GuillaumeGomez

Remove function invokation parens from documentation links.

This was never established as a convention we should follow in the 'More
API Documentation Conventions' RFC:

https://github.com/rust-lang/rfcs/blob/master/text/1574-more-api-documentation-conventions.md

7 years agoRollup merge of #40452 - frewsxcv:frewsxcv-unstable-docs, r=GuillaumeGomez
Corey Farwell [Fri, 17 Mar 2017 12:48:50 +0000 (08:48 -0400)]
Rollup merge of #40452 - frewsxcv:frewsxcv-unstable-docs, r=GuillaumeGomez

Add basic documentation/examples for six unstable features.

7 years agoRollup merge of #40433 - mattico:test-issue-29595, r=estebank
Corey Farwell [Fri, 17 Mar 2017 12:48:49 +0000 (08:48 -0400)]
Rollup merge of #40433 - mattico:test-issue-29595, r=estebank

Add test for issue #29595

Closes #29595

Couldn't get this to run locally, all the compile-fail tests are ignored... let's see what Travis says.

7 years agoRollup merge of #40387 - tbu-:pr_doc_ptr_write2, r=steveklabnik
Corey Farwell [Fri, 17 Mar 2017 12:48:48 +0000 (08:48 -0400)]
Rollup merge of #40387 - tbu-:pr_doc_ptr_write2, r=steveklabnik

Reword the non-dropping of `src` for `ptr::write{,_unaligned}`

@niconii Is it OK if I put your wording into the documentation?
CC @nagisa

7 years agoAuto merge of #40539 - clarcharr:no_default_path, r=alexcrichton
bors [Fri, 17 Mar 2017 11:55:34 +0000 (11:55 +0000)]
Auto merge of #40539 - clarcharr:no_default_path, r=alexcrichton

Removes Default for Box<Path>.

This was not supposed to be added. cc @alexcrichton

7 years agoAuto merge of #40526 - brson:docs-req, r=alexcrichton
bors [Fri, 17 Mar 2017 09:22:09 +0000 (09:22 +0000)]
Auto merge of #40526 - brson:docs-req, r=alexcrichton

Make docs required again

Completely untested. Fixes https://github.com/rust-lang-nursery/rustup.rs/issues/903

r? @alexcrichton cc @steveklabnik

7 years agoMerge branch 'master' into frewsxcv-osstr
Corey Farwell [Fri, 17 Mar 2017 01:56:52 +0000 (21:56 -0400)]
Merge branch 'master' into frewsxcv-osstr

7 years agodocumented order of conversion between u32 an ipv4addr
z1mvader [Fri, 17 Mar 2017 00:59:36 +0000 (19:59 -0500)]
documented order of conversion between u32 an ipv4addr

7 years agoadd sort_unstable to unstable book
steveklabnik [Thu, 16 Mar 2017 21:47:30 +0000 (17:47 -0400)]
add sort_unstable to unstable book

cc #40585

7 years agoAdd a test for issue 34571
topecongiro [Thu, 16 Mar 2017 15:21:40 +0000 (00:21 +0900)]
Add a test for issue 34571

7 years agotravis: Update sccache binary
Alex Crichton [Thu, 16 Mar 2017 14:55:15 +0000 (07:55 -0700)]
travis: Update sccache binary

I've built a local copy with mozilla/sccache#79 and mozilla/sccache#78. Let's
see if that helps #40240!

7 years agoFix const not displayed in rustdoc
Guillaume Gomez [Thu, 16 Mar 2017 01:15:10 +0000 (02:15 +0100)]
Fix const not displayed in rustdoc

7 years agoRemove unused param from bootstrap::clean::rm_rf
Matt Brubeck [Wed, 15 Mar 2017 23:32:30 +0000 (16:32 -0700)]
Remove unused param from bootstrap::clean::rm_rf

7 years agoRemoves Default for Box<Path>.
Clar Charr [Wed, 15 Mar 2017 05:15:27 +0000 (01:15 -0400)]
Removes Default for Box<Path>.

7 years agoFix documentation for Vec::dedup_by.
Kevin Mehall [Wed, 15 Mar 2017 03:51:00 +0000 (20:51 -0700)]
Fix documentation for Vec::dedup_by.

The previous docstring was copied from dedup_by_key.

7 years agoRename TryFrom's associated type and implement str::parse using TryFrom.
Jimmy Cuadra [Sun, 5 Mar 2017 21:00:32 +0000 (13:00 -0800)]
Rename TryFrom's associated type and implement str::parse using TryFrom.

Per discussion on the tracking issue, naming `TryFrom`'s associated type
`Error` is generally more consistent with similar traits in the Rust
ecosystem, and what people seem to assume it should be called. It
also helps disambiguate from `Result::Err`, the most common "Err".

See
https://github.com/rust-lang/rust/issues/33417#issuecomment-269108968.

TryFrom<&str> and FromStr are equivalent, so have the latter provide the
former to ensure that. Using TryFrom in the implementation of
`str::parse` means types that implement either trait can use it.
When we're ready to stabilize `TryFrom`, we should update `FromStr` to
suggest implementing `TryFrom<&str>` instead for new code.

See
https://github.com/rust-lang/rust/issues/33417#issuecomment-277175994
and
https://github.com/rust-lang/rust/issues/33417#issuecomment-277253827.

Refs #33417.

7 years agoChange how the 0 flag works in format! for floats
Piotr Jawniak [Sat, 4 Mar 2017 20:29:17 +0000 (21:29 +0100)]
Change how the 0 flag works in format! for floats

Now it always implies right-alignment, so that padding zeroes are placed after the sign (if any) and before the digits. In other words, it always takes precedence over explicitly specified `[[fill]align]`.

               :06      :<06     :>06     :^06
    before   |-001.2| |-1.200| |-001.2| |-01.20|
    after    |-001.2| |-001.2| |-001.2| |-001.2|

7 years agoChange how the `0` flag works in format!
Piotr Jawniak [Fri, 3 Mar 2017 14:42:30 +0000 (15:42 +0100)]
Change how the `0` flag works in format!

Now it always implies right-alignment, so that padding zeroes are placed after the sign (if any) and before the digits. In other words, it always takes precedence over explicitly specified `[[fill]align]`. This also affects the '#' flag: zeroes are placed after the prefix (0b, 0o, 0x) and before the digits.

           :05     :<05    :>05    :^05
before   |-0001| |-1000| |-0001| |-0100|
after    |-0001| |-0001| |-0001| |-0001|
          :#05x   :<#05x  :>#05x  :^#05x
before   |0x001| |0x100| |000x1| |0x010|
after    |0x001| |0x001| |0x001| |0x001|

Fixes #39997 [breaking-change]

7 years agorustbuild: Retry downloads of OpenSSL source
Alex Crichton [Wed, 15 Mar 2017 14:13:59 +0000 (07:13 -0700)]
rustbuild: Retry downloads of OpenSSL source

We need this to compile Cargo and we download it at build time, but as like all
other network requests it has a chance of failing. This commit moves the source
of the tarball to a mirror (S3 seems semi-more-reliable most of the time) and
also wraps the download in a retry loop.

cc #40474

7 years agoAuto merge of #40383 - ishitatsuyuki:easy-dist-analysis, r=alexcrichton
bors [Wed, 15 Mar 2017 13:50:13 +0000 (13:50 +0000)]
Auto merge of #40383 - ishitatsuyuki:easy-dist-analysis, r=alexcrichton

rustbuild: Make save-analysis an option

This makes save-analysis an option independent from the release channel.

The CI build scripts have been modified to enable the flag.

*Merge with caution.* I haven't tested this, and this can cause nightly breakage.

7 years agoAuto merge of #40212 - SimonSapin:utf8error-resume-from, r=aturon
bors [Wed, 15 Mar 2017 07:04:20 +0000 (07:04 +0000)]
Auto merge of #40212 - SimonSapin:utf8error-resume-from, r=aturon

Add Utf8Error::error_len, to help incremental and/or lossy decoding.

Without this, code outside of the standard library needs to reimplement most of the logic `from_utf8` to interpret the bytes after `valid_up_to()`.

7 years agoAuto merge of #40009 - clarcharr:box_to_buf, r=alexcrichton
bors [Wed, 15 Mar 2017 04:24:10 +0000 (04:24 +0000)]
Auto merge of #40009 - clarcharr:box_to_buf, r=alexcrichton

Leftovers from #39594; From<Box> impls

These are a few more impls that follow the same reasoning as those from #39594.

What's included:
* `From<Box<str>> for String`
* `From<Box<[T]>> for Vec<T>`
* `From<Box<CStr>> for CString`
* `From<Box<OsStr>> for OsString`
* `From<Box<Path>> for PathBuf`
* `Into<Box<str>> for String`
* `Into<Box<[T]>> for Vec<T>`
* `Into<Box<CStr>> for CString`
* `Into<Box<OsStr>> for OsString`
* `Into<Box<Path>> for PathBuf`
* `<Box<CStr>>::into_c_string`
* `<Box<OsStr>>::into_os_string`
* `<Box<Path>>::into_path_buf`
* Tracking issue for latter three methods + three from previous PR.

Currently, the opposite direction isn't doable with `From` (only `Into`) because of the separation between `liballoc` and `libcollections`. I'm holding off on those for a later PR.

7 years agoAmmended minor documentation detail abour Unicode cases.
Eric Findlay [Wed, 15 Mar 2017 01:05:55 +0000 (10:05 +0900)]
Ammended minor documentation detail abour Unicode cases.

7 years agoMake docs required again
Brian Anderson [Tue, 14 Mar 2017 19:31:20 +0000 (19:31 +0000)]
Make docs required again

7 years agoPoint out correct turbofish usage on `Foo<Bar<Baz>>`
Esteban Küber [Tue, 14 Mar 2017 02:07:47 +0000 (19:07 -0700)]
Point out correct turbofish usage on `Foo<Bar<Baz>>`

Whenever we parse a chain of binary operations, as long as the first
operation is `<` and the subsequent operations are either `>` or `<`,
present the following diagnostic help:

    use `::<...>` instead of `<...>` if you meant to specify type arguments

This will lead to spurious recommendations on situations like
`2 < 3 < 4` but should be clear from context that the help doesn't apply
in that case.

7 years agoLink core::slice to std::slice
steveklabnik [Tue, 14 Mar 2017 17:42:12 +0000 (13:42 -0400)]
Link core::slice to std::slice

7 years agoTarget builds for older macOS
Peter Wagenet [Mon, 13 Mar 2017 18:36:44 +0000 (11:36 -0700)]
Target builds for older macOS

7 years agoRemove incorrect feature from the 1.16 relnotes
Steve Klabnik [Tue, 14 Mar 2017 15:16:34 +0000 (11:16 -0400)]
Remove incorrect feature from the 1.16 relnotes

7 years agoImprove the documentation for `rvalue_static_promotion`
Tobias Schottdorf [Sun, 12 Mar 2017 22:31:17 +0000 (18:31 -0400)]
Improve the documentation for `rvalue_static_promotion`

7 years agoUse `&&` instead of `&`
Tobias Schottdorf [Sun, 12 Mar 2017 05:24:11 +0000 (00:24 -0500)]
Use `&&` instead of `&`

It does not seem valuable to always evaluate the right-hand side here.

7 years agoAdd feature toggle for rvalue-static-promotion RFC
Tobias Schottdorf [Sat, 11 Mar 2017 15:54:45 +0000 (10:54 -0500)]
Add feature toggle for rvalue-static-promotion RFC

See https://github.com/rust-lang/rfcs/pull/1414.

Updates #38865.