chore: prepare for TypeScript 6.x#536
Merged
Merged
Conversation
Update tsconfig.json and react/tsconfig.json to use `moduleResolution: "bundler"` (matches how Rollup actually resolves modules and understands the `exports` field) and add an explicit `strict: false` so intent is unambiguous regardless of future default changes. Convert all 38 `@ts-ignore` directives to `@ts-expect-error` across 20 files. `@ts-expect-error` requires the line below it to actually produce a type error, so if a future TS release fixes any of the underlying typing issues the build fails loudly with "unused directive" instead of the suppression silently going dead. All six checks (build:es6, build:react:es6, build:types, test, lint, publint) pass on TS 5.9.3 with these changes applied. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
1 task
willeastcott
added a commit
that referenced
this pull request
May 27, 2026
Removes the `<6.0.0` cap on `typescript`. The prep landed in #536, so TS 6 can ship as a regular Renovate bump. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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.
Summary
Make a future
typescript@5.x→^6.0.0Renovate bump a trivial package.json change by clearing known friction points now, while still building cleanly on the currenttypescript@5.9.3.tsconfig.jsonandreact/tsconfig.json):moduleResolution: "node"→"bundler"(matches how Rollup actually resolves modules and lets TS understandpackage.jsonexports, which pcui itself publishes). Add explicitstrict: falseso intent is unambiguous regardless of any future default changes.@ts-ignore→@ts-expect-erroracross 38 sites in 20 files. The expect-error form requires the line below it to actually produce a type error, so any future TS upgrade that fixes an underlying typing issue will fail loudly with "unused directive" instead of the suppression silently going dead. All 38 are doing real work on TS 5.9 today (verified bybuild:types).Out of scope (no action needed):
@typescript-eslint@8.60,@rollup/plugin-typescript@12.3,typedoc@0.28.19,eslint@9.39already on TS-6-compatible releases.module.exports, orimport = require()syntax in source.Test plan
Verified all six checks pass on
typescript@5.9.3with the changes applied:npm run build:es6npm run build:react:es6npm run build:typesnpm test(50/50)npm run lintnpm run publintWhen Renovate fires the TS 6 bump:
git diff types/to spot any consumer-visible.d.tsreorderings (TS 6.0 introduces opt-in--stableTypeOrdering).@ts-expect-errorcomments that now report "unused directive" — that's the failure-loud signal this PR instruments.moduleResolution: "node16"if"bundler"causes unexpected import issues under 6.x (none anticipated).🤖 Generated with Claude Code