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

build(ci): fix build with pnpm v8 #1576

Closed
wants to merge 8 commits into from

Conversation

jerome-benoit
Copy link

@jerome-benoit jerome-benoit commented Sep 5, 2023

Repository CI

This PR contains:

  • bugfix
  • feature
  • refactor
  • documentation
  • other

Are tests included?

  • yes (bugfixes and features will not be merged without tests)
  • no

Breaking Changes?

  • yes (breaking changes will not be merged unless absolutely necessary)
  • no

Description

Since 0278630, CI is broken, which hinders the merge of important bug fixes such as #1571.

Changes:

  • pnpm v8 has dropped support for node 14: remove node 14 from node versions matrix
  • add node 20 to node versions matrix
  • bump GH actions version to latest
  • remove unneeded master branch forced checkout, use instead force-depth: 0 in the github action to fetch all branches (faster)
  • order workflow steps similarly
  • bump .nvmrc version to 16 (should probably be 18)

Changes validation:

The regression root cause is not addressed:

  • The validation workflow is not ran on direct push on master branch allowing to catch quickly such regression

Some references to node 14 usage are left in the code, I do not have the knowledge to handle them

The alternative fix is to revert the culprit commit (dunno why it's not have been done by maintainers on the first CI validation failure)

- pnpm v8 has dropped support for node 14, remove it
- add node 20 to node versions matrix
- bump GH actions version to latest

Signed-off-by: Jérôme Benoit <[email protected]>

- name: Checkout Master
run: git branch -f master origin/master
uses: actions/checkout@v4
Copy link
Collaborator

@shellscape shellscape Sep 5, 2023

Choose a reason for hiding this comment

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

what's the reasoning here? opening PRs on open source projects means explaining changes so that maintainers and onlookers understand your changes.

Copy link
Author

@jerome-benoit jerome-benoit Sep 5, 2023

Choose a reason for hiding this comment

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

And maintainers of open source project should avoid to push on master partially tested changes breaking the CI :-)

The checkout forcing master branch reset was unneeded since the GH actions has been fixed to properly checkout everything with force-depth 0, even with the v1 major version.

Copy link
Author

@jerome-benoit jerome-benoit Sep 5, 2023

Choose a reason for hiding this comment

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

A CI run approval is needed to ensure some of the changes are working as intended.

Copy link
Collaborator

Choose a reason for hiding this comment

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

This might be language barrier but I'm not digging the words you're using; they are condescending.

The checkout forcing master branch usage was unneeded since the GH actions has been fixed to properly use the default repo branch, even with the v1 major version.

Please cite your source.

Copy link
Author

Choose a reason for hiding this comment

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

This might be language barrier but I'm not digging the words you're using; they are condescending.

It's just a fact: code partially tested has be been pushed directly on master breaking the CI. It's neither a good practice nor recommended. Facts pointing has nothing to do with condescending.

The checkout forcing master branch usage was unneeded since the GH actions has been fixed to properly use the default repo branch, even with the v1 major version.

Please cite your source.

The force-depth tunable to checkout branches is here since the very first release.

The latest code in that PR is working properly on the forked repo.

Copy link
Collaborator

Choose a reason for hiding this comment

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

I'm really not digging the vibe of the discourse here. I asked for a cited source, not additional hyperbole. If you'd like to continue the PR, please provide a link to a commit or issue in the actions/checkout repo that we can reference. And I kindly request that your replies not continue to be combative. If that isn't acceptable please consider closing your PR. We don't expect everyone to be chill, but with the little time maintainers have, we're not going to engage with contributors who are not.

Copy link
Author

@jerome-benoit jerome-benoit Sep 5, 2023

Choose a reason for hiding this comment

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

I'm really not digging the vibe of the discourse here. I asked for a cited source, not additional hyperbole. If you'd like to continue the PR, please provide a link to a commit or issue in the actions/checkout repo that we can reference.

The force-depth tunable to checkout branches is here since probably minor revision of the version 1 or the version 2. The reference to its introduction has no importance, the rationale on its usage is explained in the description.

  • The PR is working as intended
  • The changes are detailed
  • The regression on PRs validation CI is fixed
  • The project codeflow using PRs will be working again

That's all that PR is meant for.

with:
node-version: ${{ matrix.node }}

- name: Checkout Master
Copy link
Collaborator

Choose a reason for hiding this comment

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

and here?

Jérôme Benoit added 4 commits September 5, 2023 19:52
@jerome-benoit jerome-benoit changed the title build(ci): fix build with pnpm v8 build(ci): fix build with pnpm v8 (1/2) Sep 5, 2023
@jerome-benoit jerome-benoit changed the title build(ci): fix build with pnpm v8 (1/2) build(ci): fix build with pnpm v8 Sep 6, 2023
At least until babel/babel#15927 is fixed

Signed-off-by: Jérôme Benoit <[email protected]>
@shellscape
Copy link
Collaborator

Closing in favor of 5469967

@shellscape shellscape closed this Sep 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants