Background
Dependabot opened these bumps individually, but they can't merge in isolation (ERESOLVE peer conflicts) — they must be upgraded together as one coordinated change. Closed in favor of this tracking issue:
Current state (on main)
eslint ^8.57.1
@typescript-eslint/parser ^5.62.0
@typescript-eslint/eslint-plugin ^5.62.0
- Legacy config:
.eslintrc.json
- Lint script:
eslint --ext .ts,.tsx .
Why it's blocked
@vitejs/plugin-react@6 is already on main, but the ESLint stack is still v8.
eslint@10 requires the flat config format and @typescript-eslint v8; the plugin and parser must move together (v8 pairs with eslint 9/10).
Scope of work
References
Background
Dependabot opened these bumps individually, but they can't merge in isolation (
ERESOLVEpeer conflicts) — they must be upgraded together as one coordinated change. Closed in favor of this tracking issue:Current state (on
main)eslint^8.57.1@typescript-eslint/parser^5.62.0@typescript-eslint/eslint-plugin^5.62.0.eslintrc.jsoneslint --ext .ts,.tsx .Why it's blocked
@vitejs/plugin-react@6is already onmain, but the ESLint stack is still v8.eslint@10requires the flat config format and@typescript-eslintv8; the plugin and parser must move together (v8 pairs with eslint 9/10).Scope of work
eslint,@typescript-eslint/parser,@typescript-eslint/eslint-plugin(v8), and any eslint plugins (e.g. react/react-hooks) to flat-config-compatible versions.eslintrc.json→eslint.config.js(flat config); remove.eslintrc.json--extflag from thelintscript (flat config handles file matching via config)npm run lintand fix any new rule violationsnpm ci,npm run lint,npm run typecheck,npm testall pass in CIReferences