Releases: typescript-eslint/typescript-eslint
Releases · typescript-eslint/typescript-eslint
v8.31.0
8.31.0 (2025-04-21)
🚀 Features
- eslint-plugin: [no-unnecessary-type-assertion] add option to ignore string const assertions (#10979)
🩹 Fixes
- typescript-eslint: address bugs in
config()
around global ignores (#11065) - typescript-eslint: gracefully handle invalid flat config objects in config helper (#11070)
❤️ Thank You
- Kirk Waiblinger @kirkwaiblinger
- Nicolas Le Cam
You can read about our versioning strategy and releases on our website.
v8.30.1
8.30.1 (2025-04-14)
🚀 Features
- eslint-plugin: [no-explicit-any] suggest to replace keyof any with PropertyKey (#11032)
🩹 Fixes
- eslint-plugin: [promise-function-async] use a different error message for functions with promise and non-promise types (#10950)
- typescript-estree: use token type of
PrivateIdentifier
instead ofIdentifier
for private identifiers (#11023) - eslint-plugin: fix mistake with eslintrc config generation (#11072)
❤️ Thank You
- Dima Barabash @dbarabashh
- Ronen Amiel
- Kirk Waiblinger @kirkwaiblinger
You can read about our versioning strategy and releases on our website.
v8.30.0
see release notes here https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.30.1
v8.29.1
8.29.1 (2025-04-07)
🩹 Fixes
- eslint-plugin: [no-deprecated] report on deprecated imported variable used as property (#10998)
- typescript-estree: use token type of
Numeric
instead ofIdentifier
for bigint literals (#11021)
❤️ Thank You
- Ronen Amiel
You can read about our versioning strategy and releases on our website.
v8.29.0
8.29.0 (2025-03-31)
🚀 Features
- eslint-plugin: [prefer-nullish-coalescing] create
ignoreIfStatements
option (#11000)
🩹 Fixes
- eslint-plugin: [no-unnecessary-condition] don't report on unnecessary optional array index access when
noUncheckedIndexedAccess
is enabled (#10961) - eslint-plugin: [use-unknown-in-catch-callback-variable] remove fixable property (#10993)
- eslint-plugin: [prefer-for-of] fix false positive when using erasable type syntax within update expressions (#10981)
- eslint-plugin: support arbitrary extensions in definition files (#10957)
- eslint-plugin: [no-array-constructor] remove optional chaining exemption (#10963)
❤️ Thank You
- Dima Barabash @dbarabashh
- Kim Sang Du @developer-bandi
- Olivier Zalmanski @OlivierZal
- Ronen Amiel
- Yannick Decat @mho22
- zyoshoka @zyoshoka
You can read about our versioning strategy and releases on our website.
v8.28.0
8.28.0 (2025-03-24)
🚀 Features
- eslint-plugin: [prefer-nullish-coalescing] support
if
statement assignment (??=
) and fix several minor bugs (#10861)
🩹 Fixes
- eslint-plugin: [no-unsafe-function-type] remove fixable property (#10986)
❤️ Thank You
- Olivier Zalmanski @OlivierZal
- Yannick Decat @mho22
You can read about our versioning strategy and releases on our website.
v8.27.0
8.27.0 (2025-03-17)
🚀 Features
- utils: support
DeprecatedInfo
forrule.meta.deprecated
(#10932)
🩹 Fixes
- deps: update eslint monorepo to v9.22.0 (#10952)
- typescript-estree: fix span start for decorated
AssignmentPattern
function parameter (#10939)
❤️ Thank You
- ntnyq @ntnyq
- Ronen Amiel
You can read about our versioning strategy and releases on our website.
v8.26.1
8.26.1 (2025-03-10)
🩹 Fixes
- eslint-plugin: [prefer-nullish-coalescing] treat
any
/unknown
as eligible for nullish coalescing (#10865) - eslint-plugin: [no-unsafe-return] handle recursive type (#10883)
- rule-tester: export
TestLanguageOptions
(#10930)
❤️ Thank You
- Dave @reduckted
- Kirk Waiblinger @kirkwaiblinger
- YeonJuan @yeonjuan
You can read about our versioning strategy and releases on our website.
v8.26.0
8.26.0 (2025-03-03)
🚀 Features
- support TypeScript 5.8 (#10903)
- eslint-plugin: [no-unnecessary-type-parameters] special case tuples and parameter location arrays as single-use (#9536)
- eslint-plugin: [no-unused-var] handle implicit exports in declaration files (#10714)
- eslint-plugin: [explicit-module-boundary-types] add an option to ignore overload implementations (#10889)
- eslint-plugin: [unified-signatures] support ignoring overload signatures with different JSDoc comments (#10781)
- rule-tester: export
TestLanguageOptions
(#10892) - scope-manager: only call Object.entries once for each lib (#10647)
🩹 Fixes
- deps: update dependency typedoc-plugin-markdown to v4.4.2 (#10877)
- eslint-plugin: [unified-signatures] does not differentiate truly private methods (#10806)
- eslint-plugin: [no-invalid-void-type] report
accessor
properties with an invalidvoid
type (#10864) - eslint-plugin: [no-unnecessary-type-assertion] handle unknown (#10875)
- rule-tester: Add missing
parser
dependency (#10909)
❤️ Thank You
- Andrea Simone Costa @jfet97
- Dave @reduckted
- David Michon
- Dirk Luijk @dirkluijk
- fregante @fregante
- Ronen Amiel
- YeonJuan @yeonjuan
- Yukihiro Hasegawa @y-hsgw
You can read about our versioning strategy and releases on our website.
v8.25.0
8.25.0 (2025-02-24)
🚀 Features
- eslint-plugin: [no-misused-spread] add suggestions (#10719)
🩹 Fixes
- ast-spec: replace
attributes
withoptions
property inTSImportType
(#10691) - eslint-plugin: [unified-signatures] handle getter-setter (#10818)
- eslint-plugin: [no-deprecated] report usage of deprecated private identifiers (#10844)
- eslint-plugin: [prefer-nullish-coalescing] report on chain expressions in a ternary (#10708)
- typescript-estree: align TS module nodes to namespaces (#10504)
- visitor-keys: update keys for
ImportAttribute
(#10649)
❤️ Thank You
- Anthony Fu
- fisker Cheung @fisker
- Josh Goldberg ✨
- Olivier Zalmanski @OlivierZal
- Ronen Amiel
- YeonJuan @yeonjuan
You can read about our versioning strategy and releases on our website.