Skip to content

Releases: typescript-eslint/typescript-eslint

v8.24.1

17 Feb 17:17
Compare
Choose a tag to compare

8.24.1 (2025-02-17)

🩹 Fixes

  • deps: update eslint monorepo to v9.20.0 (#10834)
  • eslint-plugin: [no-inferrable-types] handle accessor (#10780)
  • eslint-plugin: [no-unnecessary-template-expression] ignore enum and enum members (#10782)
  • eslint-plugin: [no-unsafe-assignment] report on an any value assigned as an initializer of an accessor property (#10785)
  • eslint-plugin: [consistent-generic-constructors] check accessor class properties (#10789)
  • eslint-plugin: [prefer-return-this-type] check accessor properties with a function initializer (#10794)
  • eslint-plugin: [explicit-module-boundary-types] check accessor class properties with a function initializer (#10804)
  • eslint-plugin: [explicit-member-accessibility] check accessor class properties for missing accessibility modifier (#10805)
  • eslint-plugin: [no-deprecated] don't report on deprecated accessor property declaration (#10813)
  • eslint-plugin: [no-misused-promises] don't report on static accessor properties (#10814)
  • eslint-plugin: [class-methods-use-this] check accessor methods with a function initializer (#10796)

❤️ Thank You

  • Ronen Amiel
  • YeonJuan

You can read about our versioning strategy and releases on our website.

v8.24.0

10 Feb 17:23
Compare
Choose a tag to compare

8.24.0 (2025-02-10)

🚀 Features

  • eslint-plugin: [no-unnecessary-condition] make allowConstantLoopConditions more granular (#10639)
  • utils: add reportUnusedInlineConfigs to LinterOptions (#10718)

🩹 Fixes

  • ast-spec: correct YieldExpression.argument type (#10799)
  • eslint-plugin: [restrict-plus-operands] report adding bigints to strings when allowNumberAndString is false (#10737)
  • eslint-plugin: [no-misused-spread] correct and elaborate string spread report message (#10751)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.23.0

03 Feb 17:17
Compare
Choose a tag to compare

8.23.0 (2025-02-03)

🚀 Features

  • eslint-plugin: [no-unnecessary-boolean-literal-compare] enforce strictNullChecks (#10712)
  • types: add strict parent types for function-declaration, default-export and named-export nodes (#10685)

🩹 Fixes

  • bump ts-api-utils to ^2.0.1 (#10761)
  • deps: update eslint monorepo to v9.19.0 (#10752)
  • eslint-plugin: [no-unnecessary-type-assertion] should report readonly class properties with a literal initializer (#10618)
  • eslint-plugin: [switch-exhaustiveness-check] suggest with qualified name (#10697)
  • eslint-plugin: [no-unnecessary-template-expression] allow interpolating type parameter in type context (#10739)
  • eslint-plugin: [prefer-nullish-coalescing] fix missing return (#10732)
  • eslint-plugin: [dot-notation] handle noPropertyAccessFromIndexSignature true (#10644)
  • eslint-plugin: [no-restricted-imports] support regex option (#10699)
  • eslint-plugin: [no-shadow] ignore declare variables in definition files shadowing global variables (#10710)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.22.0

27 Jan 17:17
Compare
Choose a tag to compare

8.22.0 (2025-01-27)

🚀 Features

  • parser: add standalone isolatedDeclarations option (#10499)

🩹 Fixes

  • eslint-plugin: [prefer-nullish-coalescing] doesn't report on ternary but on equivalent || (#10517)
  • eslint-plugin: [no-duplicate-type-constituents] handle nested types (#10638)
  • eslint-plugin: [no-shadow] don't report unnecessarily on valid ways of using module augmentation (#10616)
  • eslint-plugin: [no-extraneous-class] handle accessor keyword (#10678)
  • eslint-plugin: [prefer-readonly] autofixer doesn't add type to property that is mutated in the constructor (#10552)
  • eslint-plugin: [no-unnecessary-template-expression] handle template literal type (#10612)
  • type-utils: support matching intersection types in TypeOrValueSpecifier with a PackageSpecifier (#10667)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.21.0

20 Jan 17:16
Compare
Choose a tag to compare

8.21.0 (2025-01-20)

🚀 Features

  • ast-spec: support import attributes in TSImportType (#10640)

🩹 Fixes

  • eslint-plugin: [no-unnecessary-type-arguments] handle type args on jsx (#10630)
  • eslint-plugin: check JSX spread elements for misused spread usage (#10653)
  • eslint-plugin: [no-for-in-array] report on any type which may be an array or array-like (#10535)
  • eslint-plugin: [no-base-to-string] don't crash for recursive array or tuple types (#10633)
  • eslint-plugin: [no-duplicate-enum-values] handle template literal (#10675)
  • eslint-plugin-internal: [debug-namespace] on windows (#10661)
  • rule-tester: handle window root path (#10654)
  • scope-manager: add a reference for JSX closing element if it exists (#10614)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.20.0

13 Jan 17:17
Compare
Choose a tag to compare

8.20.0 (2025-01-13)

🚀 Features

  • standardize debug namespaces to file paths (#10599)
  • eslint-plugin: [no-misused-spread] add new rule (#10551)
  • eslint-plugin: [no-deprecated] add allow options (#10585)
  • eslint-plugin: [consistent-type-assertions] add arrayLiteralTypeAssertions options (#10565)

🩹 Fixes

  • eslint-plugin: [no-shadow] ignore ordering of type declarations (#10593)
  • eslint-plugin: [no-unnecessary-condition] don't flag optional chaining for union types with an unconstrained type parameters (#10602)

❤️ Thank You

  • Josh Goldberg ✨
  • Ronen Amiel
  • YeonJuan @yeonjuan

You can read about our versioning strategy and releases on our website.

v8.19.1

06 Jan 17:17
Compare
Choose a tag to compare

8.19.1 (2025-01-06)

🩹 Fixes

  • eslint-plugin: [no-base-to-string] check array generic type (#10437)
  • eslint-plugin: [no-shadow] report correctly on parameters of functions declared with the declare keyword (#10543)
  • eslint-plugin: [strict-boolean-expressions] remove remaining (unsafe) autofixes (#10548)
  • eslint-plugin: [no-deprecated] doesn't report on shorthand property in an object expression (#10550)

❤️ Thank You

  • Kirk Waiblinger
  • mdm317
  • Ronen Amiel
  • Yukihiro Hasegawa @y-hsgw

You can read about our versioning strategy and releases on our website.

v8.19.0

30 Dec 17:18
Compare
Choose a tag to compare

8.19.0 (2024-12-30)

🚀 Features

  • eslint-plugin: [strict-boolean-expressions] check array predicate functions' return statements (#10106)

🩹 Fixes

  • eslint-plugin: add getConstraintInfo to handle generic constraints better (#10496)
  • eslint-plugin: [array-type] autofix with conditional types needs parentheses (#10522)
  • eslint-plugin: [consistent-indexed-object-style] don't report on indirect circular references (#10537)
  • eslint-plugin: [member-ordering] ignore method overloading (#10536)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.18.2

23 Dec 17:17
Compare
Choose a tag to compare

8.18.2 (2024-12-23)

🩹 Fixes

  • eslint-plugin: [no-deprecated] not reporting usages of deprecated declared constants as object value (#10498)
  • eslint-plugin: [prefer-reduce-type-parameter] don't report cases in which the fix results in a type error (#10494)
  • eslint-plugin: [no-unnecessary-condition] don't flag values of an unconstrained or valid type parameter (#10473)
  • 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)
  • eslint-plugin: [no-unsafe-type-assertion] fix for unsafe assertion to a constrained type parameter (#10461)
  • eslint-plugin: [no-unnecessary-type-arguments] handle type/value context (#10503)
  • eslint-plugin: [consistent-type-assertions] allow default assertionStyle option (#10512)
  • eslint-plugin: [no-unnecessary-condition] handle noUncheckedIndexedAccess true (#10514)
  • typescript-eslint: export types so that declarations can be named for dts files (#10513)

❤️ Thank You

You can read about our versioning strategy and releases on our website.

v8.18.1

16 Dec 17:17
Compare
Choose a tag to compare

8.18.1 (2024-12-16)

🩹 Fixes

  • eslint-plugin: [no-unnecessary-template-expression] don't report when an expression includes comment (#10444)
  • eslint-plugin: handle string like index type (#10460)
  • eslint-plugin: [no-unnecessary-boolean-literal-compare] flag values of a type parameter with boolean type constraints (#10474)
  • eslint-plugin: use consistent naming for asserting types and casting values (#10472)
  • eslint-plugin: [no-unnecessary-condition] better message when comparing between literal types (#10454)
  • scope-manager: visit params decorator before nest scope (#10475)

❤️ Thank You

You can read about our versioning strategy and releases on our website.