Skip to content

Hold TypeScript at 6.x so lint keeps working - #15

Closed
vpetersson-bot wants to merge 1 commit into
mainfrom
chore/hold-typescript-at-6
Closed

vpetersson-bot wants to merge 1 commit into
mainfrom
chore/hold-typescript-at-6

Conversation

@vpetersson-bot

Copy link
Copy Markdown

bun run lint dies on the monthly dependency bump with:

TypeError: undefined is not an object (evaluating 'ts.Extension.Cjs')
    at node_modules/@typescript-eslint/typescript-estree/dist/create-program/shared.js

typescript-eslint (pulled in via @screenly/edge-apps) declares a peer range of
typescript >=4.8.4 <6.1.0, and its latest release still does. TypeScript 7 removed
ts.Extension.Cjs, so @typescript-eslint/typescript-estree throws while loading,
before a single file is parsed. Nothing in this repo can work around that.

This takes the rest of the bump but leaves typescript on ^6.0.3, and adds a
dependabot ignore entry so TypeScript 7 is not proposed again until
typescript-eslint supports it. Drop the ignore entry at that point.

Verified locally: bun run lint, bun run type-check, bun run build and
bun test src/ all pass.

🤖 Generated with Claude Code

typescript-eslint declares a peer range of typescript >=4.8.4 <6.1.0.
TypeScript 7 removed ts.Extension.Cjs, so @typescript-eslint/typescript-estree
throws on load and bun run lint fails outright.

Take the rest of the dependency bump, keep typescript on the existing range,
and tell dependabot to skip TypeScript 7 until typescript-eslint supports it.

Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Copilot AI balanced review requested due to automatic review settings October 4, 2026 09:01

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot review overview

🟡 Changes recommended

The constraints still permit TypeScript 6.1+, outside the documented supported range.

Review effort: Balanced
Findings: 2 Medium severity

Open (2)
What changed in this PR

Refreshes development dependencies while constraining TypeScript to preserve lint compatibility.

Changes:

  • Updates development dependencies and lockfile.
  • Adds a Dependabot TypeScript exclusion.
  • Retains TypeScript 6.0.3.
File Description
package.json Updates development dependency ranges.
bun.lock Records resolved dependency updates.
.github/​dependabot.yml Excludes incompatible TypeScript updates.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment thread .github/dependabot.yml
# "TypeError: undefined is not an object (evaluating 'ts.Extension.Cjs')".
# Remove this once typescript-eslint supports TypeScript 7.
- dependency-name: 'typescript'
versions: ['>=7']
Comment thread package.json
"jsdom": "^30.0.1",
"npm-run-all2": "^9.0.3",
"prettier": "^3.9.6",
"typescript": "^6.0.3"
@vpetersson-bot

Copy link
Copy Markdown
Author

Closing this as a duplicate — an equivalent change (same TypeScript holdback plus the
dependabot ignore entry) was already opened on 2026-09-29 and is green. Review that
one instead.

@vpetersson-bot
vpetersson-bot deleted the chore/hold-typescript-at-6 branch October 4, 2026 09:10
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.

2 participants