-
Notifications
You must be signed in to change notification settings - Fork 30.1k
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
Clarify dont-land-on labels #10336
Comments
Okay, so far my understanding has been: I think I already mentioned that I’m kind of unsure about whether letting the bot add dont-land labels makes sense, but ultimately I guess we have to trust the releasers about this? |
@Fishrock123 as someone who's both in the release team and also working on the Github bot. Maybe we need another label to add to the confusion? Maybe |
When a commit is backported to a staging branch it receives |
That's not my understanding. If a PR conflicts, and the bot adds the label, and I look at my PR, and then change it so that it no longer conflicts, then I can remove the label, right? And then the PR becomes something that should be landed? Or, if my PR conflicts, but only because it depends on commits that are on master that haven't yet gotten merged to vx.x-staging, it means "make sure your dependent commits make it to staging and then remove the label" (this latter happened to me recently). So, I think it means don't land "as-is at the time of labelling". Or more precisely, "remove from branch-diff's list of auto-generated candidate commits". There is another variant of don't land: do not land this because we don't want it backported or cleaned up or present on older versions, for any reason. I worry this sounds like nit-picking, but its hard to understand how to work with labels ATM, and to know when or if PRs will make it back onto the LTS branches. +:many: to @gibfahn for trying to lay out the different states of PRs above. The release process isn't a deterministic FSM, its OK if there are clearly marked stages that aren't absolutely predictable from the code or labels, and where its clear that a contributor needs to interact with people, or watch LTS backport/release proposals (or something). But its helpful if its described in docs so they know they have to do that. |
The bot labeling edit: to expand. As the person doing most work with these labels the above comment of mine is an outline of exactly how they have been used. I believe the v7.x labels being added when a commit is not landing cleanly was added to make backporting to v7.x easier. I do not think that the ambiguity of the label. We should not be treating various branches any different in the backporting process. Having the thoughts @Fishrock123 |
Is the problem with the auto-labelling that it isn't robust because it doesn't consider dependent commits in master? Or that its checked against the wrong branch? Or that it is done only at original PR time and doesn't get reevaulated? |
the problem with the auto labeling for |
Right, so the auto-analysis is worthwhile, but should be surfaced some other way, with do-not-land being left as a human decision. |
Anybody want to try to PR this info into the guide? |
I'm 90% sure @addaleax already wrote this down, unfortunately I can never find it for some reason. |
Closing due to lack of further discussion in more than a year |
The COLLABORATOR_GUIDE has a section on backporting tags, but it doesn't include anything about the
dont-land-on
labels.If something has
dont-land-on-v7.x
does that mean it doesn't apply cleanly and needs a backport PR, or that it shouldn't be backported? I'd like to help the release team out by adding these labels, but I'm not entirely clear which ones to add.AFAIK, PRs have the following states for each release branch (using v6.x as an example):
lts-watch-v6.x
dont-land-on-v6.x
lts-watch-v6.x
andland-on-v6.x
land-on-v6.x
So
1.
,2.
, and3.
can be applied by a collaborator, but4.
,5.
, and6.
shouldn't (they're used by the release team for triaging backports). Is this correct? What labels should a backport PR have?Related: #10058 (comment) and #10294 (comment)
cc/ @nodejs/release
COLLABORATOR_GUIDE
The text was updated successfully, but these errors were encountered: