chore(deps): update dependency typescript to v7 - #145
Conversation
dawsontoth
left a comment
There was a problem hiding this comment.
Blocked: TypeScript 7 breaks npm run build
The ESM bundle still builds, but the declaration step crashes:
$ npm run build
ESM ⚡️ Build success in 45ms
node:internal/event_target:1118
TypeError: Cannot read properties of undefined (reading 'useCaseSensitiveFileNames')
at rollup-plugin-dts@6.1.1_..._typescript@5.7.3/.../rollup-plugin-dts.cjs
at .../node_modules/tsup/dist/rollup.js:4857:37
tsup 8.5.1 generates --dts output through a bundled rollup-plugin-dts@6.1.1, which drives the TS compiler API directly. TS 7.0 (the native port) reshaped that API surface, so the plugin gets an undefined host back.
Isolated to typescript alone — on this exact branch head (3ba23105), with every other dependency untouched and only typescript reverted:
| typescript | npm run build |
|---|---|
| 7.0.2 (this PR) | ✗ TypeError: ... useCaseSensitiveFileNames |
| 6.0.3 (main) | ✓ DTS ⚡️ Build success in 2300ms |
Why CI is green
There is no build job. The checks on this PR are Format, Lint, Test (Node 24), commitlint, renovate/stability-days — nothing runs tsup. Since prepublishOnly is npm run build, this would surface at publish time, breaking a release rather than a PR.
Lint and Format do pass on TS 7 (oxlint/dprint don't use the TS compiler), so those greens aren't evidence either way.
Path forward
Hold until tsup ships a rollup-plugin-dts that supports TS 7 (upstream tracking: rollup-plugin-dts needs a TS 7 compatible release; tsup then needs to pick it up). Nothing to change in this repo. Note the shipped JS output is unaffected — it's only declaration generation — so if the .d.ts files ever became optional this could be revisited, but exports currently ships dist/index.d.ts.
Suggest a Renovate hold on typescript majors for this repo until then, so this doesn't get re-proposed each cycle.
This PR contains the following updates:
^6.0.0→^7.0.0Release Notes
microsoft/TypeScript (typescript)
v7.0.2Compare Source
Configuration
📅 Schedule: (in timezone America/New_York)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ 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.