Stream: t-compiler

Topic: beta backports


Pietro Albini (Aug 25 2018 at 09:26, on Zulip):

Hey T-compiler!
There are a bunch of PRs waiting your approval for beta backport.

Pietro Albini (Aug 25 2018 at 09:27, on Zulip):

(don't worry if you missed them, those PRs weren't labeled T-compiler before)

nikomatsakis (Nov 19 2018 at 18:57, on Zulip):

@T-compiler So, we've been trying to get all backports and things done by this Wednesday, owing to the upcoming US holiday. This means we've got to "move faster" on the list of pending beta nominations than waiting for a standard triage meeting. Here is the list of backports and my recommendations. If you disagree, please let me know ASAP =)

## Clear accept

Small patch, fixes regression or otherwise important for edition.

## Accept, but with caveats

While conceptually simple, this PR itself is fairly large. Still, it fixes an NLL regression affecting servo (#55223). I don't know if there's a more minimal diff, perhaps. It's also been living happily on nightly though so producing a new PR feels more risky.

eddyb (Nov 19 2018 at 18:58, on Zulip):

hmm when does beta branch off?

eddyb (Nov 19 2018 at 18:58, on Zulip):

(I was hoping to get the proc-macro PR in)

nikomatsakis (Nov 19 2018 at 18:59, on Zulip):

I'm not 100% sure of the schedule, perhaps @simulacrum or @Pietro Albini knows for sure

nagisa (Nov 19 2018 at 18:59, on Zulip):

Probably a few days before december 7th

nagisa (Nov 19 2018 at 18:59, on Zulip):

or wait, do we branch earlier because it is rust 2018 release?

eddyb (Nov 19 2018 at 19:00, on Zulip):

yeah that's why I'm asking

Pietro Albini (Nov 19 2018 at 19:00, on Zulip):

do you mean the beta freeze?

eddyb (Nov 19 2018 at 19:00, on Zulip):

wait, no

eddyb (Nov 19 2018 at 19:01, on Zulip):

I meant when master becomes beta

Pietro Albini (Nov 19 2018 at 19:02, on Zulip):

that should happen sometime during the release week, as usual (I don't know anything that would change that, but maybe @simulacrum knows better)

simulacrum (Nov 19 2018 at 19:34, on Zulip):

I expect master/beta promotion to happen as per normal; edition release should not be affected by that.

simulacrum (Nov 19 2018 at 19:34, on Zulip):

(and vice versa)

nikomatsakis (Nov 19 2018 at 19:35, on Zulip):

I think @eddyb a major motivation was to leave time for unexpected crises but also an extra beta run

eddyb (Nov 19 2018 at 19:36, on Zulip):

okay so I shouldn't be worried

nagisa (Nov 19 2018 at 19:37, on Zulip):

No objection to backporting any of these from me.

nagisa (Nov 19 2018 at 19:37, on Zulip):

though I didn’t look at any of those too closely.

simulacrum (Nov 19 2018 at 20:03, on Zulip):

@eddyb Yes, that's accurate

simulacrum (Nov 19 2018 at 20:04, on Zulip):

No need to worry, beta/master promotion is as per normal.

Pietro Albini (Nov 19 2018 at 20:04, on Zulip):

also don't worry about the crater queue, if we need to get a beta run going we can always give priority/kill the current run

nikomatsakis (Nov 19 2018 at 21:19, on Zulip):

From talking to nrc there are a few more backports I was not aware of. Most of them are small changes to save analysis but there is also one larger change to name resolution (cc @Vadim Petrochenkov) -- to help nrc out, I can give a try at backporting that more complex one, perhaps.

Vadim Petrochenkov (Nov 19 2018 at 21:28, on Zulip):

The large PR (https://github.com/rust-lang/rust/pull/54145) introduced several ICEs and I'm not sure all of them are fixed.

Vadim Petrochenkov (Nov 19 2018 at 21:31, on Zulip):

@nrc probably needs to audit and possibly fix the relevant issues from the last month if he wants to land it on beta.

Vadim Petrochenkov (Nov 19 2018 at 21:34, on Zulip):

(I thought nrc gave up on backporting it after the first backport attempt in https://github.com/rust-lang/rust/pull/55405 was unsuccessful.)

nikomatsakis (Nov 19 2018 at 21:44, on Zulip):

He says he believes the ICEs are fixed (most of them are in the save resolution PRs to be backported)

nikomatsakis (Nov 19 2018 at 21:44, on Zulip):

seems like they should be backported as a "unit"

nikomatsakis (Nov 19 2018 at 21:45, on Zulip):

plus it would need the RLS update

nikomatsakis (Nov 19 2018 at 21:46, on Zulip):

btw, @Vadim Petrochenkov, I presume you planned to "forward port" your latest PRs to nightly?

nagisa (Nov 19 2018 at 21:47, on Zulip):

there is a PR of that

nagisa (Nov 19 2018 at 21:48, on Zulip):

https://github.com/rust-lang/rust/pull/56042

nagisa (Nov 19 2018 at 21:48, on Zulip):

(or perhaps I’m thinking of the wrong one?)

Vadim Petrochenkov (Nov 19 2018 at 21:53, on Zulip):

Yes, one forward-port already landed.
There will be one more if https://github.com/rust-lang/rust/pull/56053 lands on beta.

nikomatsakis (Nov 19 2018 at 21:54, on Zulip):

great

nikomatsakis (Nov 19 2018 at 21:54, on Zulip):

hadn't seen that

nikomatsakis (Nov 19 2018 at 21:54, on Zulip):

@Vadim Petrochenkov are you prep'ing the modified version of https://github.com/rust-lang/rust/pull/56053 that includes the "std in root" etc?

nikomatsakis (Nov 19 2018 at 21:54, on Zulip):

I think that was still the plan, right?

Vadim Petrochenkov (Nov 19 2018 at 21:55, on Zulip):

Yes.

nikomatsakis (Nov 19 2018 at 22:39, on Zulip):

well, backporting #54145 is not entirely trivial

nikomatsakis (Nov 19 2018 at 22:39, on Zulip):

still poking at it

Vadim Petrochenkov (Nov 19 2018 at 22:56, on Zulip):

@nikomatsakis
Look at https://github.com/rust-lang/rust/pull/56042/commits/38025e0dca8c2f049884eedc58792c4e321ed27c
The fix for backport of https://github.com/rust-lang/rust/issues/54145 should be very similar to that commit.

Vadim Petrochenkov (Nov 19 2018 at 22:58, on Zulip):

Oh, wait, no. I also fixed half of these segment <-> ident mismatches in the middle of rebase, so it's spread over whole https://github.com/rust-lang/rust/pull/56042.

nikomatsakis (Nov 20 2018 at 00:18, on Zulip):

@Vadim Petrochenkov ok thanks

nikomatsakis (Nov 20 2018 at 00:20, on Zulip):

though it looks pretty different :)

nikomatsakis (Nov 20 2018 at 00:21, on Zulip):

I guess we refactored all the (Ident, Option<NodeId>) pairs into Segment at some point?

Vadim Petrochenkov (Nov 20 2018 at 00:28, on Zulip):

In https://github.com/rust-lang/rust/pull/54145 itself.

nikomatsakis (Nov 20 2018 at 12:35, on Zulip):

ok, later in the sequence I guess

Vadim Petrochenkov (Nov 21 2018 at 12:18, on Zulip):

@nikomatsakis

He says he believes the ICEs are fixed (most of them are in the save resolution PRs to be backported)

Not all of them, it seems - https://github.com/rust-lang/rust/issues/56128

nikomatsakis (Nov 21 2018 at 13:34, on Zulip):

@Vadim Petrochenkov sigh

nikomatsakis (Nov 21 2018 at 14:34, on Zulip):

@Vadim Petrochenkov is https://github.com/rust-lang/rust/pull/56117 still relevant?

nikomatsakis (Nov 21 2018 at 14:34, on Zulip):

oh, I guess it is

nikomatsakis (Nov 21 2018 at 14:41, on Zulip):

the other question is how much to care about https://github.com/rust-lang/rust/issues/53797

nikomatsakis (Nov 21 2018 at 14:41, on Zulip):

I guess I will see if it's easy to fix

Vadim Petrochenkov (Nov 21 2018 at 14:47, on Zulip):

is https://github.com/rust-lang/rust/pull/56117 still relevant?

Still relevant.

the other question is how much to care about https://github.com/rust-lang/rust/issues/53797

I don't care much about it personally :)

nikomatsakis (Nov 21 2018 at 14:52, on Zulip):

It seems important for our premise of forward porting people's code

nikomatsakis (Nov 21 2018 at 14:52, on Zulip):

but it may be something that nobody in practice does

nikomatsakis (Nov 21 2018 at 14:52, on Zulip):

(specifically, having a crate + module with same name, and then referencing the module in an ambiguous way)

nikomatsakis (Nov 21 2018 at 14:52, on Zulip):

I can't quite tell where the "forward compatibility" lints trigger

nikomatsakis (Nov 21 2018 at 14:55, on Zulip):

ok, I found the code in question (lint_if_path_starts_with_module)

nikomatsakis (Nov 21 2018 at 14:56, on Zulip):

the problem here is more about modules that shadow prelude names

Vadim Petrochenkov (Nov 21 2018 at 22:21, on Zulip):

Another fix for stable-to-beta regression - https://github.com/rust-lang/rust/pull/56147

simulacrum (Feb 22 2019 at 21:33, on Zulip):

@nikomatsakis or maybe @pnkfelix -- can you look at the test failure in https://github.com/rust-lang/rust/pull/58656?

nikomatsakis (Feb 22 2019 at 21:34, on Zulip):

@simulacrum I feel like I saw a PR, I think by @pnkfelix aiming to address this problem..?

nikomatsakis (Feb 22 2019 at 21:35, on Zulip):

hmm

nikomatsakis (Feb 22 2019 at 21:35, on Zulip):

I may be misremembering

nikomatsakis (Feb 22 2019 at 21:35, on Zulip):

it looks like a different error

nikomatsakis (Feb 22 2019 at 21:36, on Zulip):

oh, heh, it looks like the PR I am thinking of is actually the one that added that test

simulacrum (Feb 22 2019 at 21:36, on Zulip):

You mean https://github.com/rust-lang/rust/pull/58649?

simulacrum (Feb 22 2019 at 21:38, on Zulip):

It might be an interaction with some previous PR (i.e., the fixes it introduces are then insufficient)

nikomatsakis (Feb 22 2019 at 21:38, on Zulip):

Right

simulacrum (Feb 22 2019 at 21:38, on Zulip):

@nikomatsakis Do you think we should back it out of the rollup and land everything else? It looks like a "why not" backport to me, but maybe that's the wrong impression

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

well so

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

ok I get the same error with +beta

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

as with my local build of the leak check stuff

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

I think we should pull that PR, yes

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

my guess is that it is building on some other changes that would have to be backported

simulacrum (Feb 22 2019 at 21:39, on Zulip):

okay I will do that soon (probably a few hours)

nikomatsakis (Feb 22 2019 at 21:39, on Zulip):

and I don't know what those are

simulacrum (Feb 22 2019 at 21:40, on Zulip):

thanks!

nikomatsakis (Feb 22 2019 at 21:41, on Zulip):

@simulacrum do you want me to rebase your branch without those commits?

nikomatsakis (Feb 22 2019 at 21:41, on Zulip):

(if you are busy right now)

simulacrum (Feb 22 2019 at 21:41, on Zulip):

if you have the time -- I will do so in ~1.5 hours myself if not

simulacrum (Feb 22 2019 at 21:41, on Zulip):

Would appreciate of course :)

pnkfelix (Feb 22 2019 at 21:42, on Zulip):

I say keep PR but kill the test it adds , myself

nikomatsakis (Feb 22 2019 at 21:42, on Zulip):

that's reasonable

pnkfelix (Feb 22 2019 at 21:42, on Zulip):

But maybe that’s just asking for trouble

nikomatsakis (Feb 22 2019 at 21:42, on Zulip):

well, in this specific instance

pnkfelix (Feb 22 2019 at 21:42, on Zulip):

The PR itself still seems it can only help

nikomatsakis (Feb 22 2019 at 21:43, on Zulip):

iirc all you did was change to delay_span_bug

nikomatsakis (Feb 22 2019 at 21:43, on Zulip):

seems safe

pnkfelix (Feb 22 2019 at 21:43, on Zulip):

Right

pnkfelix (Feb 22 2019 at 21:43, on Zulip):

Can’t believe I forgot that compare mode nll is off by default

pnkfelix (Feb 22 2019 at 21:43, on Zulip):

Argh

pnkfelix (Feb 22 2019 at 21:44, on Zulip):

(Off by default for local checkouts+builds, that is)

nikomatsakis (Feb 22 2019 at 21:44, on Zulip):

Done

nikomatsakis (Feb 22 2019 at 21:44, on Zulip):

@simulacrum I pushed a version to your branch without the test :)

nikomatsakis (Feb 22 2019 at 21:44, on Zulip):

feels..like cheating but hey

simulacrum (Feb 22 2019 at 21:44, on Zulip):

okay sounds good - I'll re-r+

pnkfelix (Feb 22 2019 at 21:44, on Zulip):

Reopen the original bug too please

pnkfelix (Feb 22 2019 at 21:45, on Zulip):

I’ll look at it again on Monday

simulacrum (Feb 22 2019 at 21:48, on Zulip):

@pnkfelix Do you want me to r- your PR? I think it'll land successfully...

nikomatsakis (Feb 22 2019 at 21:49, on Zulip):

@pnkfelix https://github.com/rust-lang/rust/issues/57464 was never closed yet

nikomatsakis (Feb 22 2019 at 21:49, on Zulip):

(as your PR had not landed)

Last update: Nov 22 2019 at 05:50UTC