build(workflows): remove Node.js v12 and v14 from macos_test matrix#12815
Draft
Planeshifter wants to merge 1 commit into
Draft
build(workflows): remove Node.js v12 and v14 from macos_test matrix#12815Planeshifter wants to merge 1 commit into
macos_test matrix#12815Planeshifter wants to merge 1 commit into
Conversation
The `macos_test` workflow runs on `macOS-latest`, which GitHub Actions
now resolves to Apple Silicon (arm64) runners. Node.js v12 and v14
predate Apple Silicon and ship no arm64/darwin binaries. Each nightly
run has been failing since the runner image migrated, with
`actions/setup-node` reporting:
Unable to find Node version '14' for platform darwin and
architecture arm64.
Remove v12 and v14 from the NODE_VERSION matrix and comment out their
corresponding `include` entries. Node.js v16 ships arm64/darwin
binaries (since April 2021) and continues to run. The same versions
remain in `linux_test.yml` (ubuntu-latest, x64), so v12/v14
code-path coverage is preserved on Linux.
Ref: https://github.com/stdlib-js/stdlib/actions/runs/27270019032
https://claude.ai/code/session_018jNV8eGma6x4JAeTUBJjHm
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.
Resolves #{{TODO: add issue number}}.
Description
This pull request:
NODE_VERSIONmatrix in.github/workflows/macos_test.ymland comments out their correspondingincludeentries.Failing run: https://github.com/stdlib-js/stdlib/actions/runs/27270019032
Symptom: The
Node.js v14andNode.js v12jobs inmacos_testfail every nightly run at the "Install Node.js" step withUnable to find Node version '14' for platform darwin and architecture arm64.Root cause:
macOS-latestGitHub Actions runners now provision Apple Silicon (arm64) machines. Node.js v12 and v14 predate Apple Silicon and ship nodarwin/arm64binaries.actions/setup-nodecannot resolve those versions on the current runner image, causing a hard failure before any tests run. This has failed on every nightly run for the past 20+ days across multipledevelopSHAs, confirming it is a persistent environment regression, not a code regression.Fix: Remove
'14'and'12'fromNODE_VERSION: ['16', '14', '12'], leaving only'16'. Node.js v16 has officialdarwin/arm64binaries (since April 2021) and resolves correctly on Apple Silicon. The same versions continue to be tested inlinux_test.yml(ubuntu-latest, x64), preserving v12/v14 code-path coverage on Linux.Validation: YAML syntax verified (strict
yaml.safe_load). Three independent reviewers examined correctness, regression scope, and style:linux_test.ymlretains v12/v14 coverage on Linux.package.jsonengine declarations unaffected.# - NODE_VERSION/# NPM_VERSIONpattern already used for v10/v8/v6/v4/v0.12/v0.10. Commit typebuild:is correct for a workflow YAML change.Related Issues
This pull request has the following related issues:
Questions
No.
Other
Reviewer note (non-blocking): The sibling workflows
macos_test_cov.ymlandmacos_benchmark.ymlcontain the sameNODE_VERSION: ['16', '14', '12']matrix declaration and will fail for the identical arm64 reason. They are not addressed here to keep each fix scoped to a single cluster.Checklist
AI Assistance
If you answered "yes" above, how did you use AI assistance?
Disclosure
This PR was written primarily by Claude Code. The CI failure was identified by enumerating 24-hour GitHub Actions runs, confirmed as persistent via 20+ days of identical failures across distinct SHAs, and root-caused by examining the
actions/setup-nodeerror output. The fix was validated by three independent agent reviews (correctness, regression scope, style).@stdlib-js/reviewers
Generated by Claude Code