Repository navigation
chore: upgrade typescript-eslint to v8 - #390
Merged
Merged
Conversation
@typescript-eslint 5.60 declares support for TS <5.1 while the repo is on 5.9, and warnOnUnsupportedTypeScriptVersion: false silenced the mismatch - any TS 5.2+ syntax would crash the parser in CI with no hint. Upgrade to v8 (with eslint 8.57) and drop the suppression. Fallout from v8's stricter recommended set: - type-check/: disable no-unused-vars for the directory - its whole idiom is values consumed only via `typeof` in type positions, which v8 now reports - concurrent/concurrentPool specs: fix a latent `yield ..., yield` comma typo into two statements (same semantics, now lint-clean) - countBy: side-effect ternary -> if/else - indexBy: drop genuinely unused imports (previously warnings) Co-Authored-By: Claude Fable 5 <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
@typescript-eslint 5.60 declares support for TypeScript
>=3.3.1 <5.1.0while the repo now runs 5.9, and.eslintrcsetwarnOnUnsupportedTypeScriptVersion: false, silencing the only signal of the mismatch. Any TS 5.2+ syntax (using, const type parameters) would crash the v5 parser in CI with no explanation. This also unblocks planned type-inference work that needs modern syntax.@typescript-eslint/parser+eslint-plugin5.60 → 8.66, eslint 8.43 → 8.57 (legacy.eslintrcformat still supported; no flat-config migration needed).warnOnUnsupportedTypeScriptVersionsuppression.Fallout from v8's stricter recommended set, all addressed:
no-unused-varsnow reports values "only used as a type" — which is the entire idiom of this directory (const res = ...consumed viatypeof resincheck<>assertions, ~900 reports). The rule is disabled fortype-check/**via an override.no-unused-expressionssurfaced a latent comma typo —yield (...)(), yield delay(...)was a single sequence expression. Split into two statements (identical runtime behavior, both yields already executed in order).Test plan
npm run lint: 0 errors, 0 warnings (was 0 errors / 7 warnings on v5)compile:checkexit 0; full jest suite passes (1146 tests)