Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Stabilize crate_in_paths, extern_absolute_paths and extern_prelude on all editions. #54403

Merged
merged 1 commit into from
Sep 22, 2018

Conversation

eddyb
Copy link
Member

@eddyb eddyb commented Sep 20, 2018

Needed for beta, path-related migrations to Rust 2018 don't work on RC1 without these stabilizations.

r? @aturon cc @nikomatsakis @Centril @alexcrichton

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 20, 2018
@eddyb eddyb added I-nominated beta-nominated Nominated for backporting to the compiler in the beta channel. T-lang Relevant to the language team, which will review and decide on the PR/issue. labels Sep 20, 2018
@rust-highfive

This comment has been minimized.

@petrochenkov
Copy link
Contributor

*extern_absolute_paths cannot be stabilized on 2015 edition, it's a huge breaking change, but this PR stabilizes it only on 2018 edition despite the title, so it's ok.

@eddyb
Copy link
Member Author

eddyb commented Sep 20, 2018

@petrochenkov Right, we already have a distinction between "the feature-gate is stable" (which is what this PR affects) and "the feature affects semantics vs migrations" (which this PR doesn't touch).

@alexcrichton
Copy link
Member

@bors: r+

@bors
Copy link
Contributor

bors commented Sep 20, 2018

📌 Commit 51abc8a9b8365f961e5a27a071f6d50b64174716 has been approved by alexcrichton

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. labels Sep 20, 2018
@alexcrichton
Copy link
Member

@bors: p=1

@alexcrichton
Copy link
Member

@bors: p=3

@alexcrichton alexcrichton added beta-accepted Accepted for backporting to the compiler in the beta channel. and removed I-nominated labels Sep 20, 2018
@rust-highfive

This comment has been minimized.

@alexcrichton
Copy link
Member

@bors: r-

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Sep 20, 2018
@eddyb
Copy link
Member Author

eddyb commented Sep 20, 2018

I'm a bit confused, how did I not hit those locally? oh dear, I forgot to check for extra files on the server that I need to take, I was only looking at existing stderr files that got changed by --bless.

@eddyb
Copy link
Member Author

eddyb commented Sep 20, 2018

@bors r=alexcrichton

@bors
Copy link
Contributor

bors commented Sep 20, 2018

📌 Commit 3a290435a872d5a18232272e1947bb9f39fc51d6 has been approved by alexcrichton

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 20, 2018
@rpjohnst
Copy link
Contributor

rpjohnst commented Sep 20, 2018

It looks like this stabilizes the extern::my_crate::a::b syntax as well as ::my_crate::a::b, which I thought was not part of the module changes.

Edit: nevermind, misread the diff. 😅

@eddyb
Copy link
Member Author

eddyb commented Sep 20, 2018

@rpjohnst extern_absolute_paths is ::crate_name::foo, not the extern keyword in paths, the latter is extern_in_paths, still unstable on both editions and untouched by this PR.

@kennytm kennytm removed the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Sep 21, 2018
bors added a commit that referenced this pull request Sep 21, 2018
[beta] Stabilize crate_in_paths, extern_absolute_paths and extern_prelude on all editions.

Beta backport of #54403.

r? @alexcrichton
bors added a commit to rust-lang/cargo that referenced this pull request Sep 21, 2018
Remove `fix::local_paths_no_fix`, as `crate_in_paths` is getting stabilized.

Needed for rust-lang/rust#54403 (blocking RC1).
Ideally we'd also clean up the tests, e.g. removing `#![feature(rust_2018_preview)]` and `is_nightly` checks, but it's easier to just remove the only failing test (because it tests the feature gate is needed).
@eddyb
Copy link
Member Author

eddyb commented Sep 21, 2018

@bors r=alexcrichton

@bors
Copy link
Contributor

bors commented Sep 21, 2018

📌 Commit 0870121ed1e97386a1bdfdcf966d2d454eab60d3 has been approved by alexcrichton

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 21, 2018
@rust-highfive
Copy link
Collaborator

The job x86_64-gnu-llvm-5.0 of your PR failed on Travis (raw log). Through arcane magic we have determined that the following fragments from the build log may contain information about the problem.

Click to expand the log.
[00:02:15] extracting /checkout/obj/build/cache/2018-09-11/cargo-beta-x86_64-unknown-linux-gnu.tar.gz
[00:02:15] error: failed to resolve patches for `https://github.com/rust-lang/cargo`
[00:02:15] 
[00:02:15] Caused by:
[00:02:15]   patch for `cargo` in `https://github.com/rust-lang/cargo` did not resolve to any crates. If this is unexpected, you may wish to consult: https://github.com/rust-lang/cargo/issues/4678
[00:02:15] Build completed unsuccessfully in 0:00:30
[00:02:15] Makefile:81: recipe for target 'prepare' failed
[00:02:15] make: *** [prepare] Error 1
[00:02:16] Command failed. Attempt 2/5:
[00:02:16] Command failed. Attempt 2/5:
[00:02:17] error: failed to resolve patches for `https://github.com/rust-lang/cargo`
[00:02:17] 
[00:02:17] Caused by:
[00:02:17]   patch for `cargo` in `https://github.com/rust-lang/cargo` did not resolve to any crates. If this is unexpected, you may wish to consult: https://github.com/rust-lang/cargo/issues/4678
[00:02:17] Build completed unsuccessfully in 0:00:00
[00:02:17] Makefile:81: recipe for target 'prepare' failed
[00:02:17] make: *** [prepare] Error 1
[00:02:19] Command failed. Attempt 3/5:
[00:02:19] Command failed. Attempt 3/5:
[00:02:19] error: failed to resolve patches for `https://github.com/rust-lang/cargo`
[00:02:19] 
[00:02:19] Caused by:
[00:02:19]   patch for `cargo` in `https://github.com/rust-lang/cargo` did not resolve to any crates. If this is unexpected, you may wish to consult: https://github.com/rust-lang/cargo/issues/4678
[00:02:19] Build completed unsuccessfully in 0:00:00
[00:02:19] Makefile:81: recipe for target 'prepare' failed
[00:02:19] make: *** [prepare] Error 1
[00:02:22] Command failed. Attempt 4/5:
[00:02:22] Command failed. Attempt 4/5:
[00:02:22] error: failed to resolve patches for `https://github.com/rust-lang/cargo`
[00:02:22] 
[00:02:22] Caused by:
[00:02:22]   patch for `cargo` in `https://github.com/rust-lang/cargo` did not resolve to any crates. If this is unexpected, you may wish to consult: https://github.com/rust-lang/cargo/issues/4678
[00:02:22] Build completed unsuccessfully in 0:00:00
[00:02:22] make: *** [prepare] Error 1
[00:02:22] Makefile:81: recipe for target 'prepare' failed
[00:02:26] Command failed. Attempt 5/5:
[00:02:26] Command failed. Attempt 5/5:
[00:02:26] error: failed to resolve patches for `https://github.com/rust-lang/cargo`
[00:02:26] 
[00:02:26] Caused by:
[00:02:26]   patch for `cargo` in `https://github.com/rust-lang/cargo` did not resolve to any crates. If this is unexpected, you may wish to consult: https://github.com/rust-lang/cargo/issues/4678
[00:02:26] Build completed unsuccessfully in 0:00:00
[00:02:26] Makefile:81: recipe for target 'prepare' failed
[00:02:26] make: *** [prepare] Error 1
[00:02:26] The command has failed after 5 attempts.
---
travis_time:end:08c17716:start=1537568032744130537,finish=1537568032750181895,duration=6051358
travis_fold:end:after_failure.3
travis_fold:start:after_failure.4
travis_time:start:162064c3
$ ln -s . checkout && for CORE in obj/cores/core.*; do EXE=$(echo $CORE | sed 's|obj/cores/core\.[0-9]*\.!checkout!\(.*\)|\1|;y|!|/|'); if [ -f "$EXE" ]; then printf travis_fold":start:crashlog\n\033[31;1m%s\033[0m\n" "$CORE"; gdb --batch -q -c "$CORE" "$EXE" -iex 'set auto-load off' -iex 'dir src/' -iex 'set sysroot .' -ex bt -ex q; echo travis_fold":"end:crashlog; fi; done || true
travis_fold:end:after_failure.4
travis_fold:start:after_failure.5
travis_time:start:20da0f62
travis_time:start:20da0f62
$ cat ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers || true
cat: ./obj/build/x86_64-unknown-linux-gnu/native/asan/build/lib/asan/clang_rt.asan-dynamic-i386.vers: No such file or directory
travis_fold:end:after_failure.5
travis_fold:start:after_failure.6
travis_time:start:0fb04600
$ dmesg | grep -i kill

I'm a bot! I can only do what humans tell me to, so if this was not helpful or you have suggestions for improvements, please ping or otherwise contact @TimNN. (Feature Requests)

@ehuss
Copy link
Contributor

ehuss commented Sep 21, 2018

This will need all the changes from #54334 if you want to update cargo.

@alexcrichton
Copy link
Member

@bors: r-

Yeah unfortunately let's land #54334 before landing this to make the cargo update easier

@bors bors added S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. and removed S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. labels Sep 21, 2018
@bors
Copy link
Contributor

bors commented Sep 22, 2018

☔ The latest upstream changes (presumably #54334) made this pull request unmergeable. Please resolve the merge conflicts.

@eddyb
Copy link
Member Author

eddyb commented Sep 22, 2018

@bors r=alexcrichton

@bors
Copy link
Contributor

bors commented Sep 22, 2018

📌 Commit fa2c246 has been approved by alexcrichton

@bors bors added S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Sep 22, 2018
@bors
Copy link
Contributor

bors commented Sep 22, 2018

⌛ Testing commit fa2c246 with merge 4a6e875...

bors added a commit that referenced this pull request Sep 22, 2018
Stabilize crate_in_paths, extern_absolute_paths and extern_prelude on all editions.

Needed for beta, path-related migrations to Rust 2018 don't work on RC1 without these stabilizations.

r? @aturon cc @nikomatsakis @Centril @alexcrichton
@bors
Copy link
Contributor

bors commented Sep 22, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: alexcrichton
Pushing 4a6e875 to master...

@bors bors merged commit fa2c246 into rust-lang:master Sep 22, 2018
@eddyb eddyb deleted the oopsie-daisy-stabilize branch September 22, 2018 14:18
ehuss added a commit to ehuss/reference that referenced this pull request Oct 17, 2018
@alexcrichton
Copy link
Member

A bit late to the punch, but this may have caused a 5-6% decrease in perf across some benchmarks

ehuss added a commit to ehuss/reference that referenced this pull request Nov 1, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
beta-accepted Accepted for backporting to the compiler in the beta channel. S-waiting-on-bors Status: Waiting on bors to run and complete tests. Bors will change the label on completion. T-lang Relevant to the language team, which will review and decide on the PR/issue.
Projects
None yet
Development

Successfully merging this pull request may close these issues.