chore(deps): update dependency release-it to v21 - #37
Conversation
230c80d to
8187868
Compare
There was a problem hiding this comment.
Review Summary
Renovate dependency-only bump: release-it ^20.2.1 → ^21.0.0, plus the corresponding yarn.lock churn (proxy-agent 7→8, inquirer core 11→12, related transitives). release-it is a devDependency invoked exclusively by .github/workflows/release.yaml as yarn release-it --ci, so the blast radius is confined to release automation and the local mise run toolchain.
Verdict: 🟢 APPROVE — merged already, all checks green, no code changes and no config changes needed to support the new major.
How I arrived at this
- Diff scope — 2 files,
+271/-331; onlypackage.jsonis a semantic change, the rest is deterministic lockfile updates fromyarn install. No.release-it.jsonchange required; theyarn release-it --ciinvocation is unaffected by v21's stricter CLI parsing since no ambiguous positional args are used. - Breaking changes surveyed (from release-it v21 notes):
- Node 22.21+ required.
mise.tomlusesnode = "lts"; Node 22 LTS is well past 22.21, and CI (Test,check,Release) is green on this SHA. See inline note below. - Strict CLI arg parsing. Only
--ciis passed inrelease.yaml:41— safe. yargs-parserdropped as a direct dep (visible in lockfile) — internal to release-it, no consumer impact.- Other listed changes (GitLab, npm workspace, GH proxy routing) don't apply to this repo's usage.
- Node 22.21+ required.
- CI signal — All required checks passed on
81878683(Test, check, dispatch review), and the PR was auto-merged by Renovate at 02:15 UTC.yarn installandyarn release-itresolution both succeeded in the pipeline. - Existing config sanity check —
.release-it.jsonuses the standardhooks.after:bump,git,github,npm: false, and@release-it/conventional-changelogplugin. All of these APIs are still supported in v21.
Strengths
- Devdep-only change; production
bin/git-wtbash script is untouched. - Renovate config (
renovate.json) extends shared config for consistency across your projects — good. - Release automation uses
mise-action, which will keep Node in step with the LTS floor without manual pinning.
Follow-ups
- P2 (informational) — see inline note on
package.json:release-it@21bumped its minimum Node to 22.21. Currentmise.toml(node = "lts") satisfies it, but worth remembering if you ever pin to a specific line.
No P0/P1 items.
🤖 Review by claude-opus-4-7 · Reviewed at merge SHA 81878683 · No prior reviews to reconcile.
| "devDependencies": { | ||
| "@release-it/conventional-changelog": "^12.0.0", | ||
| "release-it": "^20.2.1" | ||
| "release-it": "^21.0.0" |
There was a problem hiding this comment.
🟢 ℹ️ P2 — Node runtime floor raised to 22.21
release-it@21 requires Node 22.21+ (up from Node 20 in v20.x). The release workflow resolves Node via mise with node = "lts" in mise.toml, which currently satisfies this (Node 22 LTS is past 22.21), so no action is needed today.
Worth being aware of for the next Node LTS transition — if you ever pin node to a specific line older than 22.21 for reproducibility, yarn release-it will fail at install/runtime. Not a change requested for this PR.
This PR contains the following updates:
^20.2.1→^21.0.0Release Notes
release-it/release-it (release-it)
v21.0.0Compare Source
1e90d9f) - thanks @trueberryless!38355d8)3bf251f) - thanks @cyphercodes!e4e9d0e) - thanks @microHoffman!56c70c3)0332c4a)caf77c9)8d1f752) - thanks @Mopsgamer!e7e04ef)1ed9cdd)c055e7f)98c45c4)70ab576)5c55139)daab846)52c89a7)ba4326f)df94838)c381a2d)2637e8a)Configuration
📅 Schedule: (in timezone America/New_York)
🚦 Automerge: Enabled.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.