build(engines): raise the Node floor to 24.15.0 - #61
Merged
Conversation
@semantic-release/changelog@7 and @semantic-release/git@11 (merged in #59) declare engines "^22.22.2 || >=24.15". The repo's own floor was 24.0.0, so a contributor on Node 24.0-24.14 satisfied package.json but hit a hard EBADENGINE from engine-strict=true, reported against a transitive plugin rather than repo policy. CI was never exposed: .nvmrc pins 24.16.0. npm also pruned a stale extraneous conventional-commits-filter@6.0.1 entry from the lockfile while rewriting the engines block.
✅ Snyk checks have passed. No issues have been found so far.
💻 Catch issues earlier using the plugins for VS Code, JetBrains IDEs, Visual Studio, and Eclipse. |
There was a problem hiding this comment.
Pull request overview
Raises this repository’s declared Node.js engine floor to align with transitive engine requirements introduced by the semantic-release plugin upgrades, preventing engine-strict=true install failures for contributors on early Node 24 minors.
Changes:
- Update
package.jsonengines.nodefrom>=24.0.0 <25.0.0to>=24.15.0 <25.0.0. - Mirror the same engine floor in the lockfile root
packages[""].engines.node. - Remove a stale
extraneouslockfile entry (conventional-commits-filter@6.0.1) as a byproduct of lockfile rewrite.
Reviewed changes
Copilot reviewed 1 out of 2 changed files in this pull request and generated no comments.
| File | Description |
|---|---|
| package.json | Raises the repo’s Node engine floor to >=24.15.0 <25.0.0. |
| package-lock.json | Mirrors the updated Node engine floor in the root package entry and prunes a stale extraneous entry. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
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.
What
Raises
engines.nodefrom>=24.0.0 <25.0.0to>=24.15.0 <25.0.0inpackage.json, and mirrors it into the lockfile's root entry.Why
@semantic-release/changelog@7and@semantic-release/git@11, merged in #59, both declareengines: "^22.22.2 || >=24.15". The repo's own floor was24.0.0, so a contributor on Node 24.0–24.14 satisfiedpackage.jsonbut got a hardEBADENGINEinstall failure fromengine-strict=true— reported against a transitive plugin rather than against repo policy.CI was never exposed to this:
.nvmrcpins24.16.0. This is a local-developer ergonomics and correctness fix, not a build fix.This also closes a gap flagged independently in the fleet review:
repo-files/.npmrcsetsengine-strict=truespecifically so theenginesfloor is a hard install failure, but a floor of24.0.0left that control not enforcing the version the same.npmrccomment identifies as the real requirement.Note on the lockfile diff
npm install --package-lock-onlyalso pruned a stale"extraneous": trueentry forconventional-commits-filter@6.0.1that was already sitting in the lockfile onmain. Nothing depends on it; removing it is what npm does unprompted when it rewrites the file. Called out here so the extra 10 deleted lines aren't a surprise.Verification
npm ciclean on Node 24.18.0 (349 packages added, noEBADENGINE)..nvmrc(24.16.0) satisfies the new floor.Not changed
The wider fleet uses
^22.22.2 || >=24.15.0, which also admits Node 22. This repo deliberately caps at<25.0.0and pins a 24.x.nvmrc, so this PR only raises the floor rather than adopting the fleet shape — worth a separate decision if the fleet range should be standardised here.