ci(renovate): park TypeScript majors behind dashboard approval #58
No reviewers
Labels
No labels
dependencies
major
security-pin
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set
Reference
trails-cool/trails!58
Loading…
Reference in a new issue
No description provided.
Delete branch "ci/renovate-park-typescript-majors"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes the loop on #45. A TypeScript major is a decision, not a bump — this parks it on the dependency dashboard so it appears only when someone deliberately ticks it.
Why TS 7 is blocked, precisely
TS 7 ships without the programmatic compiler API, and is designed to run side-by-side with TS 6 (announcement). That is the root cause of typescript-eslint's incompatibility (typescript-eslint#12518) — not a lagging port.
typescript-estreeconverts TS source into an ESTree AST for ESLint by calling that API. With no API to call it fails at import, so lint dies before any rule runs:Seven packages, identical failure, zero files linted. Nothing in this repo could have fixed it.
Expo is a second, independent blocker: it does not run on TS 7, and Expo rather than the catalog owns
apps/mobile's TypeScript version —expo.install.excludelists onlyreactand@sentry/react-native, soexpo install --fixmanages TS there.The part worth recording for later
Because TS 7 is a side-by-side install, adopting it means adding it — TS 7 to compile, TS 6 retained for API consumers like eslint — not rewriting
~6.0.3to~7.0.0in the catalog andapps/mobile, which is what Renovate raises. The bump is the wrong shape regardless of when upstream catches up. That is the thing most likely to be forgotten in six months, so it lives in the config comment.dependencyDashboardApproval, notenabled: falseDisabling would hide the decision. This is one that should stay visible — same treatment the config already gives Expo SDK majors, for the same reason.
Verified
Effective flags computed per scenario with later-wins ordering, rather than read off rule order:
Both TS locations are covered, and patch/minor still flow normally.
Correction
#45 bumped both the catalog and
apps/mobile. I earlier described it as mobile-only, having read a diff fetched before Renovate rebased the branch. It was raising the coordinated change correctly — the blockers are upstream, not the PR.5b507f5a02f08e77d3c8