Skip to content

chore(deps): take seven of the nine major updates - #123

Merged
jonathansantilli merged 1 commit into
mainfrom
chore/majors-except-typescript
Aug 25, 2026
Merged

chore(deps): take seven of the nine major updates#123
jonathansantilli merged 1 commit into
mainfrom
chore/majors-except-typescript

Conversation

@jonathansantilli

Copy link
Copy Markdown
Owner

Supersedes #118, which failed on every platform because it grouped nine majors together and two of them cannot land.

Taken

commander 15 · which 7 · @types/node 26 · @semantic-release/changelog 7 · @semantic-release/git 11 · conventional-changelog-conventionalcommits 10 · lint-staged 17

Typecheck, lint, build and 879 tests pass locally.

Held back, with reasons

typescript 7 — this is what broke #118's CI. typescript-eslint@8.67 does not accept TS 7 as a peer, so npm install cannot resolve the tree:

npm error While resolving: typescript-eslint@8.67.0
npm error Found: typescript@7.0.2

Nothing to work around here; it lands when the eslint toolchain supports it.

js-yaml 5 — the reason not to merge a grouped major PR on faith. It installs cleanly and typechecks, and then 14 tests fail: every GitHub Actions workflow real-case fixture (RC-01 through RC-11) stops detecting its rule, plus action-file discovery.

On a scanner whose Layer 2 exists to read those workflows, that is the difference between reporting a finding and silently reporting nothing — a false negative on a security tool, which is the worst failure mode it has. What changed in its parsing needs to be understood before it ships, not discovered by a user who was told their repository was clean.

Worth splitting js-yaml into its own PR so the rest of the group isn't held behind it.

Dependabot grouped nine majors into one pull request and it failed on every
platform. Two of them cannot land yet, and merging the group would have meant
merging those with them.

Taken: commander 15, which 7, @types/node 26, @semantic-release/changelog 7,
@semantic-release/git 11, conventional-changelog-conventionalcommits 10, and
lint-staged 17. Typecheck, lint, build and 879 tests pass.

Held back:

**typescript 7** — this is what broke CI. typescript-eslint 8.67 does not
accept it as a peer, so `npm install` cannot resolve the tree at all. Nothing
to work around; it lands when the eslint toolchain supports TS 7.

**js-yaml 5** — this one is the reason not to merge a group blind. It
installs cleanly and typechecks, and then fourteen tests fail: every
GitHub Actions workflow real-case fixture stops detecting its rule, along
with action-file discovery. On a scanner whose Layer 2 exists to read those
workflows, that is the difference between reporting a finding and silently
reporting nothing. Whatever changed in how it parses needs to be understood
before it ships, not discovered later by a user who was told their repository
was clean.
@jonathansantilli
jonathansantilli merged commit 142f14e into main Aug 25, 2026
16 checks passed
@jonathansantilli
jonathansantilli deleted the chore/majors-except-typescript branch August 25, 2026 18:21
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant