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

ci: update ci to supported node.js 18 - 23 versions #25

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

MikeMcC399
Copy link

@MikeMcC399 MikeMcC399 commented Dec 12, 2024

Issue

GitHub Action CI workflows are using versions of Node.js which cause failures. The workflows are also missing other Node.js versions which belong to the set of currently supported Node.js versions, 18 - 23.

Workflow Uses Node.js
.github/workflows/test-macos.yml current, 16, 14, 12, 10, 8, 6, 4
.github/workflows/test-ubuntu.yml current, 16, 14, 12, 10, 8, 6, 4
.github/workflows/test-windows.yml current, 16, 14, 12, 10, 8, 6, 4
.github/workflows/lint.yml environment default: v10.24.1

GitHub Action versions are not using node20 compatible version, which is currently the only valid value.

npm install commands are using outdated options.

Changes

For the following workflows:

then:

  1. Modify each workflow to use the complete set of supported Node.js versions 18.x, 20.x, 22.x and 23.x. .github/workflows/lint.yml is modified to use only the Active LTS version 22.x.

  2. Update the usage of GitHub's own actions workflows to supported versions:

  3. Update the usage of GitHub action codecov/codecov-action to a supported version:

  4. Remove special handling in .github/workflows/test-windows.yml for Node.js version dependency

  5. Remove the job names name: AVA & TSD & Benchmark & Codecov since GitHub is unable to display this text untruncated, and the Node.js version is not visible in the summary. For consistency, also remove the lint job text name: XO & Prettier as well.

  6. Merge the npm install prod and dev steps due to outdated options no longer available on Node.js >= 16.

Impact

Note that this PR only updates CI. It does not update the engines field in package.json which is currently set to

"node": ">=0.10"

It does not cause any (breaking) change to the published npm package pidtree and it does not require a new release of the package.

The PR is a prerequisite for any other PRs: allowing them to be checked using CI with an expectation that CI workflows are successful.

@MikeMcC399
Copy link
Author

@simonepri

Are you able to consider this PR?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
1 participant