Releases: typescript-eslint/typescript-eslint
Releases · typescript-eslint/typescript-eslint
v8.53.0
8.53.0 (2026-01-12)
🚀 Features
- eslint-plugin: [no-unused-vars] add a fixer to remove unused imports (#11922)
- eslint-plugin: add rule [strict-void-return] (#9707)
- project-service: allow passing
Partial<ts.server.ServerHost>to project service (#11932)
🩹 Fixes
- eslint-plugin: replace unclear "
errortyped" with more helpful description (#11704) - eslint-plugin: [no-useless-default-assignment] fix false positive for parameters corresponding to a rest parameter (#11916)
- typescript-estree: forbid type-only import with both default and named specifiers (#11930)
- typescript-estree: fix syntax check for
usingdeclaration (#11910) - typescript-estree: forbid invalid class implements (#11934)
- typescript-estree: forbid invalid "import equals" declaration (#11936)
- typescript-estree: forbid invalid
extendsandimplementsin interface declaration (#11935)
❤️ Thank You
- auvred @auvred
- Brad Zacher @bradzacher
- fisker Cheung @fisker
- Josh Goldberg
- Josh Goldberg ✨
- Kirk Waiblinger
- Niki @phaux
- Nikita
- SungHyun627 @SungHyun627
- Will Harney @wjhsf
You can read about our versioning strategy and releases on our website.
v8.52.0
8.52.0 (2026-01-05)
🚀 Features
- eslint-plugin-internal: [no-multiple-lines-of-errors] add rule (#11899)
- typescript-estree: add tseslint.com redirects for CLI outputs (#11895)
🩹 Fixes
- eslint-plugin: [no-useless-default-assignment] handle conditional initializer (#11908)
- eslint-plugin: [no-base-to-string] detect @@toPrimitive and valueOf (#11901)
❤️ Thank You
- Josh Goldberg ✨
- Ulrich Stark
You can read about our versioning strategy and releases on our website.
v8.51.0
8.51.0 (2025-12-29)
🚀 Features
- eslint-plugin: expose rule name via RuleModule interface (#11719)
- eslint-plugin: [no-useless-default-assignment] fix some cases to optional syntax (#11871)
- eslint-plugin: add namespace to plugin meta (#11885)
- tsconfig-utils: more informative error on parsing failures (#11888)
🩹 Fixes
- eslint-plugin: fix crash and false positives in
no-useless-default-assignment(#11845) - eslint-plugin: remove fixable from no-dynamic-delete rule (#11876)
- eslint-plugin: bump ts-api-utils to 2.2.0 (#11881)
- eslint-plugin: [prefer-optional-chain] handle MemberExpression in final chain position (#11835)
❤️ Thank You
- Josh Goldberg ✨
- Kirk Waiblinger @kirkwaiblinger
- mdm317
- Ulrich Stark
- Yannick Decat @mho22
- Yukihiro Hasegawa @y-hsgw
You can read about our versioning strategy and releases on our website.
v8.50.1
8.50.1 (2025-12-22)
🩹 Fixes
- eslint-plugin: [method-signature-style] ignore methods that return
this(#11813) - eslint-plugin: [no-unnecessary-type-assertion] correct handling of undefined vs. void (#11826)
❤️ Thank You
- Josh Goldberg ✨
- Tamashoo @Tamashoo
You can read about our versioning strategy and releases on our website.
v8.50.0
8.50.0 (2025-12-15)
🚀 Features
- eslint-plugin: [no-useless-default-assignment] add rule (#11720)
❤️ Thank You
- Josh Goldberg ✨
- Ulrich Stark
You can read about our versioning strategy and releases on our website.
v8.49.0
8.49.0 (2025-12-08)
🚀 Features
- eslint-plugin: use
Intl.Segmenterinstead ofgraphemer(#11804)
🩹 Fixes
- deps: update dependency prettier to v3.7.2 (#11820)
❤️ Thank You
- Justin McBride
- Kirk Waiblinger @kirkwaiblinger
You can read about our versioning strategy and releases on our website.
v8.48.1
8.48.1 (2025-12-02)
⏪ Reverts
- eslint-plugin: revert "[no-redundant-type-constituents] use assignability checking for redundancy checks (#10744)" (#11812)
🩹 Fixes
- eslint-plugin: [consistent-type-exports] check value flag before resolving alias (#11769)
- eslint-plugin: honor ignored base types on generic classes (#11767)
- eslint-plugin: [restrict-template-expressions] check base types in allow list (#11764, #11759)
❤️ Thank You
- Josh Goldberg
- OleksandraKordonets
- SangheeSon @Higangssh
- tao
You can read about our versioning strategy and releases on our website.
v8.48.0
8.48.0 (2025-11-24)
🚀 Features
- eslint-plugin: [no-redundant-type-constituents] use assignability checking for redundancy checks (#10744)
- rule-tester: remove workaround for jest circular structure error (#11772)
- typescript-estree: gate all errors behind allowInvalidAST (#11693)
- typescript-estree: replace fast-glob with tinyglobby (#11740)
🩹 Fixes
- eslint-plugin: [consistent-generic-constructors] ignore when constructor is typed array (#10477)
- scope-manager: change unhelpful
aaaerror message and changeanalyzeto expectsProgram(#11747) - typescript-estree: infers singleRun as true for project service (#11327)
- typescript-estree: disallow binding patterns in parameter properties (#11760)
❤️ Thank You
- Ben McCann @benmccann
- Dima Barabash @dbarabashh
- fisker Cheung @fisker
- James Henry @JamesHenry
- JamesHenry @JamesHenry
- Josh Goldberg
- Josh Goldberg ✨
- Kirk Waiblinger @kirkwaiblinger
- mdm317 @gen-ip-1
- Younsang Na @nayounsang
You can read about our versioning strategy and releases on our website.
v8.47.0
8.47.0 (2025-11-17)
🚀 Features
- eslint-plugin: [no-unused-private-class-members] new extension rule (#10913)
❤️ Thank You
- Brad Zacher @bradzacher
You can read about our versioning strategy and releases on our website.
v8.46.4
8.46.4 (2025-11-10)
🩹 Fixes
- eslint-plugin: [no-deprecated] fix double-report on computed literal identifiers (#11006, #10958)
- eslint-plugin: handle override modifier in promise-function-async fixer (#11730)
- parser: error when both
projectServiceandprojectare set (#11333)
❤️ Thank You
- Evgeny Stepanovych @undsoft
- Kentaro Suzuki @sushichan044
- Maria Solano @MariaSolOs
You can read about our versioning strategy and releases on our website.