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

Partial implementation of uniform paths 2.0 to land before beta #55297

Merged
merged 6 commits into from
Oct 28, 2018

Conversation

petrochenkov
Copy link
Contributor

Reimplementation of uniform paths using in-scope resolution rather than canaries is a minor breaking change due to stricter future-proofing, so it needs to be landed before beta or backported later.

I hope to implement at least something until beta so we have less to backport.
r? @Mark-Simulacrum

@rust-highfive rust-highfive added the S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. label Oct 23, 2018
@Mark-Simulacrum
Copy link
Member

Beta/nightly promotion is what I think matters here and that'll happen early next week so I don't think there's a super big rush here?

@Mark-Simulacrum
Copy link
Member

Changes look good modulo some tests though I'm not super familiar with this area if code - r=me if you don't think we need them

@petrochenkov
Copy link
Contributor Author

Beta/nightly promotion is what I think matters here and that'll happen early next week

Oh, that's great, I thought it's supposed to be Oct 26 (same day as stable release).
Then I'll perhaps manage to do everything during the weekend.

@Mark-Simulacrum
Copy link
Member

We're delaying beta/nightly promotion due to RC2.

@petrochenkov petrochenkov added this to the Edition 2018 RC 2 milestone Oct 25, 2018
@pnkfelix
Copy link
Member

@petrochenkov are you planning on doing further revision to this PR, e.g. adding tests? Or do you just want to copy over the r+ marker from @Mark-Simulacrum ?

@petrochenkov
Copy link
Contributor Author

@pnkfelix
Yes, during remainder of the week.
(Right now this is only refactoring, not even tests needed.)

@petrochenkov petrochenkov 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-review Status: Awaiting review from the assignee but also interested parties. labels Oct 25, 2018
@bors
Copy link
Contributor

bors commented Oct 26, 2018

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

so that they are correctly resolved on 2018 edition
@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.
travis_time:end:0602586a:start=1540684739814040976,finish=1540684740999024716,duration=1184983740
$ git checkout -qf FETCH_HEAD
travis_fold:end:git.checkout

Encrypted environment variables have been removed for security reasons.
See https://docs.travis-ci.com/user/pull-requests/#Pull-Requests-and-Security-Restrictions
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
$ export SCCACHE_REGION=us-west-1
Setting environment variables from .travis.yml
$ export SCCACHE_BUCKET=rust-lang-ci-sccache2
---
[00:14:21]    Compiling rustc_traits v0.0.0 (/checkout/src/librustc_traits)
[00:16:20]    Compiling rustc_privacy v0.0.0 (/checkout/src/librustc_privacy)
[00:16:29]    Compiling rustc_resolve v0.0.0 (/checkout/src/librustc_resolve)
[00:16:29]    Compiling rustc_plugin v0.0.0 (/checkout/src/librustc_plugin)
[00:16:31] error[E0599]: no method named `gensym` found for type `syntax::ast::Symbol` in the current scope
[00:16:31]    --> librustc_resolve/build_reduced_graph.rs:414:73
[00:16:31]     |
[00:16:31] 414 |                             Some(Ident::new(keywords::Underscore.name().gensym(), use_tree.span)),
[00:16:31]     |                                             |                           |
[00:16:31]     |                                             |                           this is an associated function, not a method
[00:16:31]     |                                             |                           this is an associated function, not a method
[00:16:31]     |                                             help: use associated function syntax instead: `syntax::ast::Symbol::gensym`
[00:16:31]     |
[00:16:31]     = note: found the following associated functions; to be used as methods, functions must have a `self` parameter
[00:16:31]     = note: the candidate is defined in an impl for the type `syntax::ast::Symbol`
[00:16:31]     = help: did you mean `gensymed`?
[00:16:32] error: aborting due to previous error
[00:16:32] 
[00:16:32] For more information about this error, try `rustc --explain E0599`.
[00:16:32] error: Could not compile `rustc_resolve`.

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)

@petrochenkov petrochenkov changed the title [WIP] Partial implementation of uniform paths 2.0 to land before beta Partial implementation of uniform paths 2.0 to land before beta Oct 28, 2018
@petrochenkov
Copy link
Contributor Author

@Mark-Simulacrum
Ok, no more delays. This is ready for landing and the rest I'll implement later.

All the commits are refactorings except for b45b4da (bug-fix), acdbd06 (drive-by diagnostics improvement) and c57f0a7 (which is somewhat essential and fixes imports with empty groups (a::b::{}) on 2018 edition).

@petrochenkov petrochenkov added S-waiting-on-review Status: Awaiting review from the assignee but also interested parties. and removed S-waiting-on-author Status: This is awaiting some action (such as code changes or more information) from the author. labels Oct 28, 2018
@Mark-Simulacrum
Copy link
Member

@bors r+ p=5

Beta promotion has already happened so I'll prepare a beta backport as well.

@bors
Copy link
Contributor

bors commented Oct 28, 2018

📌 Commit c57f0a7 has been approved by Mark-Simulacrum

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

bors commented Oct 28, 2018

⌛ Testing commit c57f0a7 with merge 1982f18...

bors added a commit that referenced this pull request Oct 28, 2018
Partial implementation of uniform paths 2.0 to land before beta

Reimplementation of uniform paths using in-scope resolution rather than canaries is a minor breaking change due to stricter future-proofing, so it needs to be landed before beta or backported later.

I hope to implement at least something until beta so we have less to backport.
r? @Mark-Simulacrum
@bors
Copy link
Contributor

bors commented Oct 28, 2018

☀️ Test successful - status-appveyor, status-travis
Approved by: Mark-Simulacrum
Pushing 1982f18 to master...

@bors bors merged commit c57f0a7 into rust-lang:master Oct 28, 2018
@Mark-Simulacrum Mark-Simulacrum added beta-nominated Nominated for backporting to the compiler in the beta channel. beta-accepted Accepted for backporting to the compiler in the beta channel. labels Oct 28, 2018
@pietroalbini pietroalbini removed the beta-nominated Nominated for backporting to the compiler in the beta channel. label Oct 28, 2018
bors added a commit that referenced this pull request Oct 29, 2018
[beta]: Prepare the 1.31.0 beta release

* Update to Cargo's branched 1.31.0 branch
* Update the channel to `beta`

Rolled up beta-accepted PRs:

* #55362: Remove `cargo new --edition` from release notes.
* #55325: Fix link to macros chapter
* #55358: Remove redundant clone (2)
* #55346: Shrink `Statement`.
* #55274: Handle bindings in substructure of patterns with type ascriptions
* #55297: Partial implementation of uniform paths 2.0 to land before beta
* #55192: Fix ordering of nested modules in non-mod.rs mods
* #55185: path suggestions in Rust 2018 should point out the change in semantics
* #55423: back out bogus `Ok`-wrapping suggestion on `?` arm type mismatch

Note that **this does not update the bootstrap compiler** due to #55404
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.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

6 participants