build(workflows): add upper npm version bounds for Node.js v12/v14/v16 in test workflows#12447
Open
Planeshifter wants to merge 1 commit into
Open
build(workflows): add upper npm version bounds for Node.js v12/v14/v16 in test workflows#12447Planeshifter wants to merge 1 commit into
Planeshifter wants to merge 1 commit into
Conversation
The linux_test and macos_test workflows specify NPM_VERSION '>2.7.0'
for Node.js v12, v14, and v16 matrix entries. npm@11.x, released with
a new engine requirement of {"node":"^20.17.0 || >=22.9.0"}, now
satisfies '>2.7.0', causing the 'Update npm' step to fail with
EBADENGINE on those Node.js versions.
Cap Node.js v16 and v14 to '<10.0.0' (npm@10+ requires >=18.17.0)
and Node.js v12 to '<9.0.0' (npm@9+ requires >=14.17.0), consistent
with the bounds already used in linux_test_install.yml and
macos_test_npm_install.yml.
Ref: https://github.com/stdlib-js/stdlib/actions/runs/26814282283
Ref: https://github.com/stdlib-js/stdlib/actions/runs/26814321669
https://claude.ai/code/session_01F6HMgfZ1MCE9N74ZFrTYim
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
Description
This pull request:
NPM_VERSIONmatrix entries for Node.js v12, v14, and v16 inlinux_test.ymlandmacos_test.yml.The
NPM_VERSION: '>2.7.0'range is unbounded and now resolves to npm@11.x, which requires Node.js^20.17.0 || >=22.9.0. This causes the "Update npm" step to fail on every daily run for all Node.js v12/v14/v16 matrix jobs with:The fix applies the same upper-bound pattern already used in the sibling
linux_test_install.ymlandmacos_test_npm_install.ymlworkflows:>2.7.0>2.7.0 <10.0.0>2.7.0>2.7.0 <10.0.0>2.7.0>2.7.0 <9.0.0npm@9.x is the last release supporting Node.js v12. npm@10.x and above require Node.js >=14.17.0 at minimum; npm@10.x requires ^18.17.0 or >=20.5.0.
Related Issues
This pull request has the following related issues:
Questions
No.
Other
Sibling workflows that already carry correct bounds and served as reference:
.github/workflows/linux_test_install.yml.github/workflows/macos_test_npm_install.ymlChecklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
This PR was written primarily by Claude Code as part of an automated CI failure investigation routine. The root cause (npm engine incompatibility) and the fix pattern (matching bounds from sibling workflows) were identified and validated by the AI agent. A human should verify the npm semver ranges are correct before merging.
@stdlib-js/reviewers
Generated by Claude Code