Skip to content

feat(#616): add Node 26 to CI matrices - #644

Merged
RomiC merged 2 commits into
masterfrom
feat/616-node26-ci
May 31, 2026
Merged

feat(#616): add Node 26 to CI matrices#644
RomiC merged 2 commits into
masterfrom
feat/616-node26-ci

Conversation

@RomiC

@RomiC RomiC commented May 31, 2026

Copy link
Copy Markdown
Owner

Closes #616

Changes

  • Added Node 26 to the test matrix in both npm-test.yml and npm-publish.yml
  • Added "overrides": { "yargs": "^18.0.0" } to package.json to unblock c8 on Node 26

Context

c8 bundles yargs@17.7.2 which has "type": "module" but its ./yargs entrypoint uses require(). Node 26's now-stable require()-of-ESM feature properly loads it as ESM, causing require() inside the file to fail. Overriding yargs to ^18.0.0 resolves this.

The upstream fix is tracked in bcoe/c8#578. Once it ships, the override can be removed — tracked in #643.

Verified on Node 26

All scripts pass clean on Node 26:

  • npm run lint
  • npm test
  • npm run test:coverage
  • npm run build
  • npm run smoke

@coveralls

coveralls commented May 31, 2026

Copy link
Copy Markdown

Coverage Status

coverage: 100.0%. remained the same — feat/616-node26-ci into master

@RomiC RomiC self-assigned this May 31, 2026
@RomiC RomiC added enhancement dx Changes relative to the Developer eXperience labels May 31, 2026
@RomiC
RomiC requested a review from Copilot May 31, 2026 14:30

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Pull request overview

Adds Node.js 26 coverage to the project’s GitHub Actions CI matrices and introduces an npm overrides entry to keep the Node 26 test/coverage toolchain working (via forcing yargs to a Node-26-compatible version for c8’s dependency tree).

Changes:

  • Expanded the Node version matrix to include Node 26 in both test and publish workflows.
  • Added an npm overrides rule for yargs (and updated the lockfile accordingly) to unblock c8 on Node 26.

Reviewed changes

Copilot reviewed 3 out of 4 changed files in this pull request and generated no comments.

File Description
package.json Adds overrides to force yargs v18 to keep c8 working on Node 26.
package-lock.json Updates resolved dependency graph to reflect the yargs override (including transitive updates).
.github/workflows/npm-test.yml Adds Node 26 to the CI test matrix.
.github/workflows/npm-publish.yml Adds Node 26 to the release build/test matrix prior to publish.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@RomiC
RomiC merged commit 891e084 into master May 31, 2026
10 checks passed
@RomiC
RomiC deleted the feat/616-node26-ci branch May 31, 2026 14:33
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dx Changes relative to the Developer eXperience enhancement

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Enable Node 26 in CI when GitHub Actions supports it

3 participants