Commit 3d18067
fix(deps): update typescript-eslint monorepo to v8 (major) (#70)
This PR contains the following updates:
| Package | Change | Age | Confidence |
|---|---|---|---|
|
[@typescript-eslint/eslint-plugin](https://typescript-eslint.io/packages/eslint-plugin)
([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin))
| [`7.18.0` ->
`8.46.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/7.18.0/8.46.1)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
|
[@typescript-eslint/parser](https://typescript-eslint.io/packages/parser)
([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser))
| [`7.18.0` ->
`8.46.1`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/7.18.0/8.46.1)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
[](https://docs.renovatebot.com/merge-confidence/)
|
---
### Release Notes
<details>
<summary>typescript-eslint/typescript-eslint
(@​typescript-eslint/eslint-plugin)</summary>
###
[`v8.46.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8461-2025-10-13)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.46.0...v8.46.1)
##### 🩹 Fixes
- **eslint-plugin:** \[no-misused-promises] special-case `.finally` not
to report when a promise returning function is provided as an argument
([#​11667](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11667))
- **eslint-plugin:** \[prefer-optional-chain] include mixed "nullish
comparison style" chains in checks
([#​11533](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11533))
##### ❤️ Thank You
- mdm317
- Ronen Amiel
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.46.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8460-2025-10-06)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.45.0...v8.46.0)
##### 🚀 Features
- **eslint-plugin:** \[no-unsafe-member-access] add
allowOptionalChaining option
([#​11659](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11659))
- **rule-schema-to-typescript-types:** clean up and make public
([#​11633](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11633))
##### 🩹 Fixes
- **eslint-plugin:** \[prefer-readonly-parameter-types] ignore tagged
primitives
([#​11660](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11660))
- **typescript-estree:** forbid abstract method and accessor to have
implementation
([#​11657](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11657))
- **eslint-plugin:** removed error type previously deprecated
([#​11674](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11674))
- **eslint-plugin:** \[no-deprecated] ignore deprecated `export import`s
([#​11603](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11603))
- **eslint-plugin:** \[unbound-method] improve wording around `this:
void` and binding
([#​11634](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11634))
- **rule-tester:** deprecate TestCaseError#type and LintMessage#nodeType
([#​11628](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11628))
- **eslint-plugin:** \[no-floating-promises] remove excess parentheses
in suggestions
([#​11487](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11487))
##### ❤️ Thank You
- fisker Cheung [@​fisker](https://redirect.github.com/fisker)
- Josh Goldberg ✨
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- Mark de Dios
[@​peanutenthusiast](https://redirect.github.com/peanutenthusiast)
- Richard Torres
[@​richardtorres314](https://redirect.github.com/richardtorres314)
- Victor Genaev
[@​mainframev](https://redirect.github.com/mainframev)
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.45.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8450-2025-09-29)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.44.1...v8.45.0)
##### 🚀 Features
- **eslint-plugin:** expose rule name via RuleModule interface
([#​11616](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11616))
##### 🩹 Fixes
- **eslint-plugin:** \[prefer-nullish-coalescing] ignoreBooleanCoercion
should not apply to top-level ternary expressions
([#​11614](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11614))
- **eslint-plugin:** \[no-base-to-string] check if superclass is ignored
([#​11617](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11617))
##### ❤️ Thank You
- mdm317
- Moses Odutusin
[@​thebolarin](https://redirect.github.com/thebolarin)
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.44.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8441-2025-09-22)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.44.0...v8.44.1)
##### 🩹 Fixes
- **eslint-plugin:** \[await-thenable] should not report passing values
to promise aggregators which may be a promise in an array literal
([#​11611](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11611))
- **eslint-plugin:** \[no-unsafe-enum-comparison] support unions of
literals
([#​11599](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11599))
- **eslint-plugin:** \[no-base-to-string] make ignoredTypeNames match
type names without generics
([#​11597](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11597))
##### ❤️ Thank You
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- mdm317
- Ronen Amiel
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.44.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8440-2025-09-15)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.43.0...v8.44.0)
##### 🚀 Features
- **eslint-plugin:** \[await-thenable] report invalid (non-promise)
values passed to promise aggregator methods
([#​11267](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11267))
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-type-conversion] ignore enum
members
([#​11490](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11490))
##### ❤️ Thank You
- Moses Odutusin
[@​thebolarin](https://redirect.github.com/thebolarin)
- Ronen Amiel
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.43.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8430-2025-09-08)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.42.0...v8.43.0)
##### 🚀 Features
- **typescript-estree:** disallow empty type parameter/argument lists
([#​11563](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11563))
##### 🩹 Fixes
- **eslint-plugin:** \[prefer-return-this-type] don't report an error
when returning a union type that includes a classType
([#​11432](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11432))
- **eslint-plugin:** \[no-deprecated] should report deprecated exports
and reexports
([#​11359](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11359))
- **eslint-plugin:** \[no-floating-promises] allowForKnownSafeCalls now
supports function names
([#​11423](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11423),
[#​11430](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11430))
- **eslint-plugin:** \[consistent-type-exports] fix declaration
shadowing
([#​11457](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11457))
- **eslint-plugin:** \[no-unnecessary-type-conversion] only report \~\~
on integer literal types
([#​11517](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11517))
- **scope-manager:** exclude Program from DefinitionBase node types
([#​11469](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11469))
- **eslint-plugin:** \[no-non-null-assertion] do not suggest optional
chain on LHS of assignment
([#​11489](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11489))
- **type-utils:** add union type support to TypeOrValueSpecifier
([#​11526](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11526))
##### ❤️ Thank You
- Dima [@​dbarabashh](https://redirect.github.com/dbarabashh)
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- mdm317
- tao
- Victor Genaev
[@​mainframev](https://redirect.github.com/mainframev)
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
- 민감자(Minji Kim)
[@​mouse0429](https://redirect.github.com/mouse0429)
- 송재욱
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.42.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8420-2025-09-02)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.41.0...v8.42.0)
##### 🩹 Fixes
- **deps:** update eslint monorepo to v9.33.0
([#​11482](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11482))
You can read about our [versioning
strategy](https://typescript-eslint.io/users/versioning) and
[releases](https://typescript-eslint.io/users/releases) on our website.
###
[`v8.41.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8410-2025-08-25)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.40.0...v8.41.0)
##### 🩹 Fixes
- **deps:** update dependency prettier to v3.6.2
([#​11496](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11496))
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.40.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8400-2025-08-18)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.39.1...v8.40.0)
##### 🚀 Features
- **typescript-estree:** forbid invalid keys in `EnumMember`
([#​11232](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11232))
##### ❤️ Thank You
- fisker Cheung [@​fisker](https://redirect.github.com/fisker)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.39.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8391-2025-08-11)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.39.0...v8.39.1)
This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.39.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8390-2025-08-04)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.38.0...v8.39.0)
##### 🚀 Features
- **eslint-plugin:** \[only-throw-error] support yield/await expressions
([#​11417](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11417))
- **eslint-plugin:** add no-unnecessary-type-conversion to
strict-type-checked ruleset
([#​11427](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11427))
- update to TypeScript 5.9.2
([#​11445](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11445))
- **eslint-plugin:** \[naming-convention] add enumMember PascalCase
default option
([#​11127](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11127))
##### 🩹 Fixes
- **eslint-plugin:** \[no-unsafe-assignment] add an
`unsafeObjectPattern` message
([#​11403](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11403))
- **eslint-plugin:** \[prefer-optional-chain] ignore `check` option for
most RHS of a chain
([#​11272](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11272))
##### ❤️ Thank You
- Brad Zacher
[@​bradzacher](https://redirect.github.com/bradzacher)
- James Garbutt [@​43081j](https://redirect.github.com/43081j)
- Kim Sang Du
[@​developer-bandi](https://redirect.github.com/developer-bandi)
- Sasha Kondrashov
- tao
- Younsang Na
[@​nayounsang](https://redirect.github.com/nayounsang)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.38.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8380-2025-07-21)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.37.0...v8.38.0)
##### 🩹 Fixes
- disallow extra properties in rule options
([#​11397](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11397))
- **eslint-plugin:** \[consistent-generic-constructors] resolve conflict
with `isolatedDeclarations` if enabled in `constructor` option
([#​11351](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11351))
##### ❤️ Thank You
- Andrew Kazakov
[@​andreww2012](https://redirect.github.com/andreww2012)
- Younsang Na
[@​nayounsang](https://redirect.github.com/nayounsang)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.37.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8370-2025-07-14)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.36.0...v8.37.0)
##### 🩹 Fixes
- **eslint-plugin:** \[unified-signatures] fix false positives for
ignoreOverloadsWithDifferentJSDoc option
([#​11381](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11381))
##### ❤️ Thank You
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.36.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8360-2025-07-07)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.35.1...v8.36.0)
This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.35.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8351-2025-06-30)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.35.0...v8.35.1)
##### 🩹 Fixes
- remove prettier from eslint-plugin
([#​11339](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11339))
##### ❤️ Thank You
- Abhijeet Singh [@​cseas](https://redirect.github.com/cseas)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.35.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8350-2025-06-23)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.34.1...v8.35.0)
##### 🚀 Features
- **eslint-plugin:** \[no-base-to-string] add checkUnknown Option
([#​11128](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11128))
##### ❤️ Thank You
- Kim Sang Du
[@​developer-bandi](https://redirect.github.com/developer-bandi)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.34.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8341-2025-06-16)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.34.0...v8.34.1)
This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.34.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8340-2025-06-09)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.33.1...v8.34.0)
##### 🩹 Fixes
- **typescript-estree:** add validation to interface extends
([#​11271](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11271))
##### ❤️ Thank You
- Tao
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.33.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8331-2025-06-02)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.33.0...v8.33.1)
##### 🩹 Fixes
- exclude docs/ directory from eslint-plugin package
([#​11251](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11251))
##### ❤️ Thank You
- roottool
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.33.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8330-2025-05-26)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.32.1...v8.33.0)
This was a version bump only for eslint-plugin to align it with other
projects, there were no code changes.
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.32.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8321-2025-05-12)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.32.0...v8.32.1)
##### 🩹 Fixes
- **eslint-plugin:** \[consistent-indexed-object-style] check for
indirect circular types in aliased mapped types
([#​11177](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11177))
- **eslint-plugin:** \[consistent-indexed-object-style] adjust
auto-fixer to generate valid syntax for `TSMappedType` with no type
annotation
([#​11180](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11180))
- **eslint-plugin:** \[no-deprecated] support computed member access
([#​10867](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10867))
- **eslint-plugin:** \[no-unnecessary-type-conversion] shouldn't have
fixable property
([#​11194](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11194))
##### ❤️ Thank You
- Azat S. [@​azat-io](https://redirect.github.com/azat-io)
- Dima Barabash
[@​dbarabashh](https://redirect.github.com/dbarabashh)
- Ronen Amiel
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.32.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8320-2025-05-05)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.31.1...v8.32.0)
##### 🚀 Features
- **eslint-plugin:** \[only-throw-error] add option `allowRethrowing`
([#​11075](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11075))
- **eslint-plugin:** \[no-unnecessary-type-conversion] add rule
([#​10182](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10182))
##### 🩹 Fixes
- **eslint-plugin:** \[prefer-nullish-coalescing] fix parenthesization
bug in suggestion
([#​11098](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11098))
- **eslint-plugin:** \[unified-signatures] exempt `this` from optional
parameter overload check
([#​11005](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11005))
- **eslint-plugin:** \[no-unnecessary-type-parameters] should
parenthesize type in suggestion fixer if necessary
([#​10907](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10907))
##### ❤️ Thank You
- Andy Edwards
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- mdm317
- Sasha Kondrashov
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.31.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8311-2025-04-28)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.31.0...v8.31.1)
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-condition] downgrade fix to
suggestion
([#​11081](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11081))
##### ❤️ Thank You
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.31.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8310-2025-04-21)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.30.1...v8.31.0)
##### 🚀 Features
- **eslint-plugin:** \[no-unnecessary-type-assertion] add option to
ignore string const assertions
([#​10979](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10979))
##### ❤️ Thank You
- Nicolas Le Cam
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.30.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8301-2025-04-14)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.30.0...v8.30.1)
##### 🩹 Fixes
- **eslint-plugin:** fix mistake with eslintrc config generation
([#​11072](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11072))
##### ❤️ Thank You
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.30.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8300-2025-04-14)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.29.1...v8.30.0)
##### 🚀 Features
- **eslint-plugin:** \[no-explicit-any] suggest to replace keyof any
with PropertyKey
([#​11032](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11032))
##### 🩹 Fixes
- **eslint-plugin:** \[promise-function-async] use a different error
message for functions with promise and non-promise types
([#​10950](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10950))
##### ❤️ Thank You
- Dima Barabash
[@​dbarabashh](https://redirect.github.com/dbarabashh)
- Ronen Amiel
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.29.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8291-2025-04-07)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.29.0...v8.29.1)
##### 🩹 Fixes
- **eslint-plugin:** \[no-deprecated] report on deprecated imported
variable used as property
([#​10998](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10998))
##### ❤️ Thank You
- Ronen Amiel
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.29.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8290-2025-03-31)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.28.0...v8.29.0)
##### 🚀 Features
- **eslint-plugin:** \[prefer-nullish-coalescing] create
`ignoreIfStatements` option
([#​11000](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/11000))
##### 🩹 Fixes
- **eslint-plugin:** \[no-array-constructor] remove optional chaining
exemption
([#​10963](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10963))
- **eslint-plugin:** support arbitrary extensions in definition files
([#​10957](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10957))
- **eslint-plugin:** \[prefer-for-of] fix false positive when using
erasable type syntax within update expressions
([#​10981](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10981))
- **eslint-plugin:** \[use-unknown-in-catch-callback-variable] remove
fixable property
([#​10993](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10993))
- **eslint-plugin:** \[no-unnecessary-condition] don't report on
unnecessary optional array index access when `noUncheckedIndexedAccess`
is enabled
([#​10961](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10961))
##### ❤️ Thank You
- Dima Barabash
[@​dbarabashh](https://redirect.github.com/dbarabashh)
- Kim Sang Du
[@​developer-bandi](https://redirect.github.com/developer-bandi)
- Olivier Zalmanski
[@​OlivierZal](https://redirect.github.com/OlivierZal)
- Ronen Amiel
- Yannick Decat [@​mho22](https://redirect.github.com/mho22)
- zyoshoka [@​zyoshoka](https://redirect.github.com/zyoshoka)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.28.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8280-2025-03-24)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.27.0...v8.28.0)
##### 🚀 Features
- **eslint-plugin:** \[prefer-nullish-coalescing] support `if` statement
assignment (`??=`) and fix several minor bugs
([#​10861](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10861))
##### 🩹 Fixes
- **eslint-plugin:** \[no-unsafe-function-type] remove fixable property
([#​10986](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10986))
##### ❤️ Thank You
- Olivier Zalmanski
[@​OlivierZal](https://redirect.github.com/OlivierZal)
- Yannick Decat [@​mho22](https://redirect.github.com/mho22)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.27.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8270-2025-03-17)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.26.1...v8.27.0)
##### 🚀 Features
- **utils:** support `DeprecatedInfo` for `rule.meta.deprecated`
([#​10932](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10932))
##### ❤️ Thank You
- ntnyq [@​ntnyq](https://redirect.github.com/ntnyq)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.26.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8261-2025-03-10)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.26.0...v8.26.1)
##### 🩹 Fixes
- **eslint-plugin:** \[no-unsafe-return] handle recursive type
([#​10883](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10883))
- **eslint-plugin:** \[prefer-nullish-coalescing] treat `any`/`unknown`
as eligible for nullish coalescing
([#​10865](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10865))
##### ❤️ Thank You
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.26.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8260-2025-03-03)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.25.0...v8.26.0)
##### 🚀 Features
- **eslint-plugin:** \[unified-signatures] support ignoring overload
signatures with different JSDoc comments
([#​10781](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10781))
- **eslint-plugin:** \[explicit-module-boundary-types] add an option to
ignore overload implementations
([#​10889](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10889))
- **eslint-plugin:** \[no-unused-var] handle implicit exports in
declaration files
([#​10714](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10714))
- support TypeScript 5.8
([#​10903](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10903))
- **eslint-plugin:** \[no-unnecessary-type-parameters] special case
tuples and parameter location arrays as single-use
([#​9536](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/9536))
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-type-assertion] handle unknown
([#​10875](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10875))
- **eslint-plugin:** \[no-invalid-void-type] report `accessor`
properties with an invalid `void` type
([#​10864](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10864))
- **eslint-plugin:** \[unified-signatures] does not differentiate truly
private methods
([#​10806](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10806))
##### ❤️ Thank You
- Andrea Simone Costa
[@​jfet97](https://redirect.github.com/jfet97)
- Dirk Luijk [@​dirkluijk](https://redirect.github.com/dirkluijk)
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.25.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8250-2025-02-24)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.24.1...v8.25.0)
##### 🚀 Features
- **eslint-plugin:** \[no-misused-spread] add suggestions
([#​10719](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10719))
##### 🩹 Fixes
- **eslint-plugin:** \[prefer-nullish-coalescing] report on chain
expressions in a ternary
([#​10708](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10708))
- **eslint-plugin:** \[no-deprecated] report usage of deprecated private
identifiers
([#​10844](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10844))
- **eslint-plugin:** \[unified-signatures] handle getter-setter
([#​10818](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10818))
##### ❤️ Thank You
- Olivier Zalmanski
[@​OlivierZal](https://redirect.github.com/OlivierZal)
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.24.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8241-2025-02-17)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.24.0...v8.24.1)
##### 🩹 Fixes
- **eslint-plugin:** \[class-methods-use-this] check `accessor` methods
with a function initializer
([#​10796](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10796))
- **eslint-plugin:** \[no-misused-promises] don't report on `static`
`accessor` properties
([#​10814](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10814))
- **eslint-plugin:** \[no-deprecated] don't report on deprecated
`accessor` property declaration
([#​10813](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10813))
- **eslint-plugin:** \[explicit-member-accessibility] check `accessor`
class properties for missing accessibility modifier
([#​10805](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10805))
- **eslint-plugin:** \[explicit-module-boundary-types] check `accessor`
class properties with a function initializer
([#​10804](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10804))
- **eslint-plugin:** \[prefer-return-this-type] check `accessor`
properties with a function initializer
([#​10794](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10794))
- **eslint-plugin:** \[consistent-generic-constructors] check `accessor`
class properties
([#​10789](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10789))
- **eslint-plugin:** \[no-unsafe-assignment] report on an `any` value
assigned as an initializer of an `accessor` property
([#​10785](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10785))
- **eslint-plugin:** \[no-unnecessary-template-expression] ignore enum
and enum members
([#​10782](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10782))
- **eslint-plugin:** \[no-inferrable-types] handle accessor
([#​10780](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10780))
##### ❤️ Thank You
- Ronen Amiel
- YeonJuan
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.24.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8240-2025-02-10)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.23.0...v8.24.0)
##### 🚀 Features
- **eslint-plugin:** \[no-unnecessary-condition] make
`allowConstantLoopConditions` more granular
([#​10639](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10639))
##### 🩹 Fixes
- **eslint-plugin:** \[no-misused-spread] correct and elaborate string
spread report message
([#​10751](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10751))
- **eslint-plugin:** \[restrict-plus-operands] report adding bigints to
strings when `allowNumberAndString` is `false`
([#​10737](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10737))
##### ❤️ Thank You
- Josh Goldberg ✨
- noah
- Ronen Amiel
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.23.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8230-2025-02-03)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.22.0...v8.23.0)
##### 🚀 Features
- **eslint-plugin:** \[no-unnecessary-boolean-literal-compare] enforce
strictNullChecks
([#​10712](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10712))
##### 🩹 Fixes
- **eslint-plugin:** \[no-shadow] ignore declare variables in definition
files shadowing global variables
([#​10710](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10710))
- **eslint-plugin:** \[no-restricted-imports] support regex option
([#​10699](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10699))
- **eslint-plugin:** \[dot-notation] handle
noPropertyAccessFromIndexSignature true
([#​10644](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10644))
- **eslint-plugin:** \[prefer-nullish-coalescing] fix missing return
([#​10732](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10732))
- bump ts-api-utils to ^2.0.1
([#​10761](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10761))
- **eslint-plugin:** \[no-unnecessary-template-expression] allow
interpolating type parameter in type context
([#​10739](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10739))
- **eslint-plugin:** \[switch-exhaustiveness-check] suggest with
qualified name
([#​10697](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10697))
- **eslint-plugin:** \[no-unnecessary-type-assertion] should report
readonly class properties with a literal initializer
([#​10618](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10618))
##### ❤️ Thank You
- Josh Goldberg ✨
- Olivier Zalmanski
[@​OlivierZal](https://redirect.github.com/OlivierZal)
- Ryan Poon [@​sopa301](https://redirect.github.com/sopa301)
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.22.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8220-2025-01-27)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.21.0...v8.22.0)
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-template-expression] handle
template literal type
([#​10612](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10612))
- **eslint-plugin:** \[prefer-readonly] autofixer doesn't add type to
property that is mutated in the constructor
([#​10552](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10552))
- **eslint-plugin:** \[no-extraneous-class] handle accessor keyword
([#​10678](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10678))
- **eslint-plugin:** \[no-shadow] don't report unnecessarily on valid
ways of using module augmentation
([#​10616](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10616))
- **eslint-plugin:** \[no-duplicate-type-constituents] handle nested
types
([#​10638](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10638))
- **eslint-plugin:** \[prefer-nullish-coalescing] doesn't report on
ternary but on equivalent ||
([#​10517](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10517))
##### ❤️ Thank You
- mdm317
- Olivier Zalmanski
[@​OlivierZal](https://redirect.github.com/OlivierZal)
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.21.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8210-2025-01-20)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.20.0...v8.21.0)
##### 🩹 Fixes
- **eslint-plugin:** \[no-duplicate-enum-values] handle template literal
([#​10675](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10675))
- **eslint-plugin:** \[no-base-to-string] don't crash for recursive
array or tuple types
([#​10633](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10633))
- **eslint-plugin:** \[no-for-in-array] report on any type which may be
an array or array-like
([#​10535](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10535))
- **eslint-plugin:** check JSX spread elements for misused spread usage
([#​10653](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10653))
- **eslint-plugin:** \[no-unnecessary-type-arguments] handle type args
on jsx
([#​10630](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10630))
##### ❤️ Thank You
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.20.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8200-2025-01-13)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.19.1...v8.20.0)
##### 🚀 Features
- **eslint-plugin:** \[consistent-type-assertions] add
arrayLiteralTypeAssertions options
([#​10565](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10565))
- **eslint-plugin:** \[no-deprecated] add allow options
([#​10585](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10585))
- **eslint-plugin:** \[no-misused-spread] add new rule
([#​10551](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10551))
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-condition] don't flag optional
chaining for union types with an unconstrained type parameters
([#​10602](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10602))
- **eslint-plugin:** \[no-shadow] ignore ordering of type declarations
([#​10593](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10593))
##### ❤️ Thank You
- Josh Goldberg ✨
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.19.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8191-2025-01-06)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.19.0...v8.19.1)
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-type-assertion] handle literal
types
([#​10523](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10523))
- **eslint-plugin:** \[no-deprecated] doesn't report on shorthand
property in an object expression
([#​10550](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10550))
- **eslint-plugin:** \[strict-boolean-expressions] remove remaining
(unsafe) autofixes
([#​10548](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10548))
- **eslint-plugin:** \[no-shadow] report correctly on parameters of
functions declared with the `declare` keyword
([#​10543](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10543))
- **eslint-plugin:** \[no-base-to-string] check array generic type
([#​10437](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10437))
##### ❤️ Thank You
- Kirk Waiblinger
- mdm317
- Ronen Amiel
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.19.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8190-2024-12-30)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.18.2...v8.19.0)
##### 🚀 Features
- **eslint-plugin:** \[strict-boolean-expressions] check array predicate
functions' return statements
([#​10106](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10106))
##### 🩹 Fixes
- **eslint-plugin:** \[member-ordering] ignore method overloading
([#​10536](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10536))
- **eslint-plugin:** \[consistent-indexed-object-style] don't report on
indirect circular references
([#​10537](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10537))
- **eslint-plugin:** \[array-type] autofix with conditional types needs
parentheses
([#​10522](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10522))
- **eslint-plugin:** add getConstraintInfo to handle generic constraints
better
([#​10496](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10496))
##### ❤️ Thank You
- Karl Werner
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.18.2`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8182-2024-12-23)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.18.1...v8.18.2)
##### 🩹 Fixes
- **eslint-plugin:** \[no-unnecessary-condition] handle
noUncheckedIndexedAccess true
([#​10514](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10514))
- **eslint-plugin:** \[consistent-type-assertions] allow default
assertionStyle option
([#​10512](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10512))
- **eslint-plugin:** \[no-unnecessary-type-arguments] handle type/value
context
([#​10503](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10503))
- **eslint-plugin:** \[no-unsafe-type-assertion] fix for unsafe
assertion to a constrained type parameter
([#​10461](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10461))
- **eslint-plugin:** \[consistent-indexed-object-style] use a suggestion
over an auto-fix if can't reliably determine that produced index
signature is valid
([#​10490](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10490))
- **eslint-plugin:** \[no-unnecessary-condition] don't flag values of an
unconstrained or valid type parameter
([#​10473](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10473))
- **eslint-plugin:** \[prefer-reduce-type-parameter] don't report cases
in which the fix results in a type error
([#​10494](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10494))
- **eslint-plugin:** \[no-deprecated] not reporting usages of deprecated
declared constants as object value
([#​10498](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10498))
##### ❤️ Thank You
- Luke Deen Taylor
[@​controversial](https://redirect.github.com/controversial)
- Ronen Amiel
- Scott O'Hara
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
- Yukihiro Hasegawa [@​y-hsgw](https://redirect.github.com/y-hsgw)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.18.1`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8181-2024-12-16)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.18.0...v8.18.1)
##### 🩹 Fixes
- **scope-manager:** visit params decorator before nest scope
([#​10475](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10475))
- **eslint-plugin:** \[no-unnecessary-condition] better message when
comparing between literal types
([#​10454](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10454))
- **eslint-plugin:** use consistent naming for asserting types and
casting values
([#​10472](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10472))
- **eslint-plugin:** \[no-unnecessary-boolean-literal-compare] flag
values of a type parameter with boolean type constraints
([#​10474](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10474))
- **eslint-plugin:** handle string like index type
([#​10460](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10460))
- **eslint-plugin:** \[no-unnecessary-template-expression] don't report
when an expression includes comment
([#​10444](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10444))
##### ❤️ Thank You
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- Ronen Amiel
- YeonJuan [@​yeonjuan](https://redirect.github.com/yeonjuan)
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.18.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8180-2024-12-09)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.17.0...v8.18.0)
##### 🚀 Features
- **eslint-plugin:** \[switch-exhaustiveness-check] add support for "no
default" comment
([#​10218](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10218))
- **eslint-plugin:** \[no-deprecated] report on super call of deprecated
constructor
([#​10397](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10397))
##### 🩹 Fixes
- **eslint-plugin:** \[use-unknown-in-catch-callback-variable] only flag
function literals
([#​10436](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10436))
- **eslint-plugin:** \[no-base-to-string] handle more robustly when
multiple `toString()` declarations are present for a type
([#​10432](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10432))
- **eslint-plugin:** \[no-deprecated] check if a JSX attribute is
deprecated
([#​10374](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10374))
- typescript peer dependency
([#​10373](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10373))
##### ❤️ Thank You
- Kim Sang Du
[@​developer-bandi](https://redirect.github.com/developer-bandi)
- Kirk Waiblinger
[@​kirkwaiblinger](https://redirect.github.com/kirkwaiblinger)
- mdm317
- rtritto
You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.
###
[`v8.17.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#8170-2024-12-02)
[Compare
Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.16.0...v8.17.0)
##### 🚀 Features
- **eslint-plugin:** \[prefer-promise-reject-errors] options to allow
any and unknown
([#​10392](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10392))
##### 🩹 Fixes
- **eslint-plugin:** \[promise-function-async] handle function
overloading
([#​10304](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10304))
- **eslint-plugin:** remove references to "extendDefaults" in
no-restricted-types
([#​10401](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10401))
- **eslint-plugin:** \[no-unnecessary-template-expressions] allow
template expre
</details>
---
### Configuration
📅 **Schedule**: Branch creation - "on the 1-7 day on Sunday" (UTC),
Automerge - At any time (no schedule defined).
🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.
♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.
🔕 **Ignore**: Close this PR and you won't be reminded about these
updates again.
---
- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box
---
This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/emartech/json-logger-js).
<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MS4xNDMuMSIsInVwZGF0ZWRJblZlciI6IjQxLjE0My4xIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
---------
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: D056966 <[email protected]>1 parent 5c91188 commit 3d18067
File tree
4 files changed
+173
-151
lines changed- src/logger
4 files changed
+173
-151
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
18 | 18 | | |
19 | 19 | | |
20 | 20 | | |
21 | | - | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
22 | 28 | | |
0 commit comments