ci: publish on Node 24 with a pinned npm - #113
Merged
Merged
Conversation
The publish workflow ran on Node 25 and then upgraded the global npm with
`npm install -g npm@latest`. Since npm 12 shipped, `@latest` resolves to a
release that requires Node `^22.22.2 || ^24.15.0 || >=26.0.0` — Node 25 is
excluded — so the upgrade step died with EBADENGINE and publishing was
impossible:
npm error code EBADENGINE
npm error Not compatible with your version of node/npm: npm@12.0.2
npm error Required: {"node":"^22.22.2 || ^24.15.0 || >=26.0.0"}
npm error Actual: {"node":"v25.9.0","npm":"11.12.1"}
Move to Node 24, an LTS line supported by every npm 11.x and 12.x, and pin
the upgrade to `npm@^11.5.1` — a range rather than `@latest`, so the next
npm major dropping this Node line cannot silently break publishing again.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_013S4pYSjwUsiZtdtMMpW7bw
|
ⓘ Qodo reviews are paused because the subscription is no longer active. Ask your workspace admin to reactivate the subscription to resume reviews. Manage billing |
PR Summary by QodoRestore npm publishing with Node 24 and pinned npm 11
AI Description
Diagram
High-Level Assessment
Files changed (1)
|
Code Review by Qodo🐞 Bugs (0) 📘 Rule violations (0) 📎 Requirement gaps (0)
Great, no issues found!Qodo reviewed your code and found no material issues that require reviewTip of the day💡 Did you know, you can add REVIEW.md to your repo root and Qodo follows it on every PR |
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.
.github/workflows/npmpublish.ymlran the publish job on Node 25 and then upgraded the global npm withnpm install -g npm@latest. Since npm 12 shipped,@latestresolves to a release that requires Node^22.22.2 || ^24.15.0 || >=26.0.0— Node 25 is excluded — so the upgrade step dies with EBADENGINE and this plugin cannot publish at all:This moves the job to Node 24 — an LTS line supported by every npm 11.x and 12.x — and pins the upgrade to
npm@^11.5.1(the floor for OIDC trusted publishing) rather than@latest, so the next npm major dropping this Node line cannot silently break publishing fleet-wide again.Same change as the already-merged pilot, ether/ep_align#227.
🤖 Generated with Claude Code
https://claude.ai/code/session_013S4pYSjwUsiZtdtMMpW7bw