GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — doc: improve the process for landing a PR by jakecastelli · Pull Request #54564 · nodejs/node

Conversation

@jakecastelli

@jakecastelli jakecastelli commented Aug 26, 2024

Copy link
Copy Markdown
Member

Even though incident could still happen like #54554 (which was partially my fault and I learned the lesson), I wanted to share my thoughts and hope to reduce the potential breakage in the future. As I noticed the other PR in net landed and I should've taken a closer look, or even just re-trigger the CI when in doubt, both approaches would help me to catch the test failure earlier.

Wording is not my expertise, happy for any suggestions 👍 or even just any thoughts on this potentially ongoing issue.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@nodejs-github-bot

nodejs-github-bot commented Aug 26, 2024

Copy link
Copy Markdown
Collaborator

Review requested:

  • @nodejs/tsc
All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@nodejs-github-bot nodejs-github-bot added the doc Issues and PRs related to Node.js documentation. label Aug 26, 2024
@jakecastelli
doc: improve the process for landing a PR
63c5b97
@jakecastelli
jakecastelli force-pushed the add-more-info-to-landing-pr-section branch from 8ee6287 to 63c5b97 Compare August 26, 2024 03:52
@jakecastelli jakecastelli changed the title meta: improve the process for landing a PR doc: improve the process for landing a PR Aug 26, 2024
aduh95
aduh95 reviewed Aug 26, 2024
View reviewed changes

@aduh95 aduh95 left a comment

Copy link
Copy Markdown
Contributor

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I’m not sure it’s worth adding this, more often than not the CQ label is added to the PR hours before it actually lands because of our wait time requirements, and checking the commits at the time won’t tell you more info than the CI already does. We already have a requirement for CI to not be older than 2 weeks, that’s the requirement we should amend if anything – and IMO we don’t need to change anything, it’s not like broken CI on main is a recurring thing

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

marco-ippolito, jakecastelli, tniessen, benjamingr, and mcollina reacted with thumbs up emoji jakecastelli reacted with eyes emoji
All reactions
  • 👍 5 reactions
  • 👀 1 reaction
Comment thread doc/contributing/collaborator-guide.md Resolved

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli @aduh95
Update doc/contributing/collaborator-guide.md
e03feec
Co-authored-by: Antoine du Hamel <[email protected]>
@marco-ippolito

marco-ippolito commented Aug 26, 2024

Copy link
Copy Markdown
Member

I agree there is probably no need to take action since its very rare

jakecastelli and benjamingr reacted with thumbs up emoji
All reactions
  • 👍 2 reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli

jakecastelli commented Aug 26, 2024 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member Author

Thanks for reviewing, I agree with you. Since this is rarely going to happen and the recovery is not costly (either revert or fast track a fix), I think it is probably not worthing the extra burden to do the check.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

tniessen
tniessen reviewed Aug 26, 2024
View reviewed changes
Comment thread doc/contributing/collaborator-guide.md Resolved

Uh oh!

There was an error while loading. Please reload this page.

@targos

targos commented Aug 26, 2024

Copy link
Copy Markdown
Member

Instead, I think we should look into using GitHub's commit queue system (which I think can ensure that tests pass after applying the commits in order).

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli @tniessen
Update doc/contributing/collaborator-guide.md
272ca49
Co-authored-by: Tobias Nießen <[email protected]>
@jakecastelli

jakecastelli commented Aug 26, 2024 •
edited
Loading

Uh oh!

There was an error while loading. Please reload this page.

Copy link
Copy Markdown
Member Author

Instead, I think we should look into using GitHub's commit queue system (which I think can ensure that tests pass after applying the commits in order).

That's not a bad suggestion! We could exclude subsystems e.g. doc, meta etc. to make things slightly faster.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@aduh95

aduh95 commented Aug 26, 2024

Copy link
Copy Markdown
Contributor

Instead, I think we should look into using GitHub's commit queue system (which I think can ensure that tests pass after applying the commits in order).

Or run tests as part of our own CQ system. I don't think this can reasonably work on GHA runners, we'd need to use a runner that can cache build results so most build take instants instead of about one hour currently, plus another hour for running the tests.

jakecastelli reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@avivkeller avivkeller added meta Issues and PRs related to the general management of the project. commit-queue-squash PRs the Commit Queue should land as one squashed commit. labels Aug 26, 2024
avivkeller
avivkeller reviewed Aug 26, 2024
View reviewed changes
Comment thread doc/contributing/collaborator-guide.md Resolved

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli @avivkeller
Update doc/contributing/collaborator-guide.md
d8d2f7d
Co-authored-by: Aviv Keller <[email protected]>
@tniessen

tniessen commented Aug 26, 2024

Copy link
Copy Markdown
Member

Instead, I think we should look into using GitHub's commit queue system (which I think can ensure that tests pass after applying the commits in order).

That was the original design idea for the commit queue, many years ago. The main problem is how slow and flaky our CI has been.

jakecastelli reacted with eyes emoji
All reactions
  • 👀 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

avivkeller
avivkeller reviewed Aug 26, 2024
View reviewed changes
Comment thread doc/contributing/collaborator-guide.md
landing. If you are unsure exactly how to format the commit messages, use
the commit log as a reference. See [this commit][commit-example] as an
example.
6. Ideally, check the recent commits on `main` to evaluate any potential

@avivkeller avivkeller Aug 26, 2024

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
6. Ideally, check the recent commits on `main` to evaluate any potential
6. Ideally, check the recent commits on the base branch to evaluate any potential

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@jakecastelli jakecastelli Aug 26, 2024

Copy link
Copy Markdown
Member Author

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

main and the base branch in this context are synonym to me, I will treat this as a nit if that's ok

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions

@avivkeller avivkeller Aug 26, 2024

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sure! FWIW the base branch refers to whatever branch the PR is targeting, so I think it makes more sense, as the PR could also be targeting vX.x-staging, etc.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

jakecastelli reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

@mcollina mcollina Sep 2, 2024

Copy link
Copy Markdown
Member

There was a problem hiding this comment.

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think this is feasible. It's already hard to land something as is.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@jakecastelli

jakecastelli commented Aug 26, 2024

Copy link
Copy Markdown
Member Author

The main problem is how slow and flaky our CI has been

A full CI run would be rough, but a quick test run (on windows, macOS, Linux) hopefully would be sufficient.

avivkeller reacted with thumbs up emoji
All reactions
  • 👍 1 reaction

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

jasnell
jasnell approved these changes Aug 27, 2024
View reviewed changes
aymen94
aymen94 approved these changes Aug 28, 2024
View reviewed changes
@aduh95

aduh95 commented Sep 2, 2024

Copy link
Copy Markdown
Contributor

@jakecastelli do you still want to pursue this? There seems to be quite a few concerns with this PR:

  • it sets unrealistic standards for landing a PR.
  • it won't be very effective (the CQ label is sometimes added hours or even days before a PR actually lands).
  • there might be better solutions (e.g. have the CQ run the test suites when PR is labelled with needs-ci).
  • the current situation is "good enough" IMO (at least I know that I will 100% of the time take the risk of not doing that optional step you're adding, and I suspect most folks would do the same, so what's the point of having it in our docs I wonder).

Note that this PR is technically ready to land if you decide to ignore those concerns (there's at least one approving review, and no one is blocking it), so it's up to you.

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli

jakecastelli commented Sep 2, 2024

Copy link
Copy Markdown
Member Author

Thanks for summarising the concerns and feedback @aduh95, I have decided not to proceed with landing, I left it open for a bit just to see if there were other folks thoughts or feedback. I think I am in a position to close it as:

  1. I agree this would add extra burden to land a PR with very little benefit.
  2. We can always revert a faulty commit, maybe it would block some other PRs from landing for day or two, it won't be catastrophic.
  3. There are potentially better solutions with automated toolings.

Appreciated all the reviews and feedback 🙏

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@jakecastelli jakecastelli closed this Sep 2, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@mcollina mcollina mcollina left review comments
@tniessen tniessen tniessen left review comments
@aduh95 aduh95 aduh95 left review comments
@avivkeller avivkeller avivkeller left review comments
@jasnell jasnell jasnell approved these changes
+1 more reviewer
@aymen94 aymen94 aymen94 approved these changes
Reviewers whose approvals may not affect merge requirements

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

commit-queue-squash PRs the Commit Queue should land as one squashed commit. doc Issues and PRs related to Node.js documentation. meta Issues and PRs related to the general management of the project.

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

10 participants

@jakecastelli @nodejs-github-bot @marco-ippolito @targos @aduh95 @tniessen @mcollina @jasnell @aymen94 @avivkeller
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.