# What changed in typescript-eslint

> 183 changes in typescript-eslint 8 from its official release notes, upgrade guides and advisories: 20 breaking, 4 deprecations, 18 new APIs and options. Each one cited. Sources checked 2026-10-17. HTML: https://unstale.sh/npm/typescript-eslint/

To see which of these apply to a repository, run `npx @unstale/cli init` in it.

## typescript-eslint 8

### Breaking changes

- Import attribute keys are now restricted to identifiers and strings. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Import attribute values are now required to be string literals. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Reports void on non-call expressions. (8.69.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0)
- The rule now reports identical signatures. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- typescript-estree now throws for invalid definite assignment in class properties. (8.64.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.64.0)
- Reports more cases based on assignability. (8.59.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.0)
- The rule now uses assignability checks in checkTypePredicates, potentially changing which conditions are reported as unnecessary. (8.58.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.2)
- The rule now flags banned generics used in extends or implements. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- The rule now requires strictNullChecks. (8.55.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0)
- Invalid modifiers in object expressions are now forbidden. (8.55.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0)
- The rule now checks both the base constraint and actual type for non-null assertions. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- Invalid class implements declarations are now rejected. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- Invalid import equals declarations are now rejected. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- Invalid extends and implements clauses in interface declarations are now rejected. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- Type-only imports using both default and named specifiers are now rejected. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- The rule now detects @@toPrimitive and valueOf implementations. (8.52.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.52.0)
- analyze now expects a Program. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)
- Binding patterns in parameter properties are now disallowed. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)
- The parser now errors when projectService and project are configured together. (8.46.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.4)
- Invalid modifiers in object methods are now forbidden. (8.46.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.2)

### Deprecations

- Deprecates the extension rule. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- Adds a warning when TypeScript 7 is detected. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- The no-loop-func rule is deprecated. (8.64.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.64.0)
- defaultOptions is deprecated; use meta.defaultOptions instead. (8.55.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0)

### New APIs and options

- Adds a rule that detects unsafe enum assignments. (8.71.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.0)
- Adds a rule for detecting generated empty object types. (8.70.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.0)
- Adds the flagUnions option to checkConditionals. (8.69.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0)
- Rule metadata now supports the ESLint meta.languages property. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- Basic globs are now exported for using tseslint. (8.67.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.67.0)
- Adds an option that errors on unsupported TypeScript versions. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- The parser now supports parsing import defer syntax. (8.64.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.64.0)
- Detects async usage where a synchronous dispose operation is expected. (8.63.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.63.0)
- The allow configuration now accepts TypeOrValueSpecifier. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- ParserServicesWithTypeInformation gains shortcut methods for accessing parser services. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- ScopeManager now supports adding globals for integrations that construct or extend scope information. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- Project service now accepts Partial<ts.server.ServerHost> values. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- A new ESLint rule is available for checking strict void returns. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- Adds a new rule to eslint-plugin-internal for detecting multiple lines of errors. (8.52.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.52.0)
- Plugin metadata now includes a namespace. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- RuleModule now exposes the rule name. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- Adds an ESLint rule that detects useless default assignments. (8.50.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.50.0)
- Adds an extension rule for detecting unused private class members. (8.47.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.47.0)

### Performance

- Cleanup is throttled when opening files, reducing cleanup activity during file opening. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)

### Behavior and default changes

- Its fixer is now provided as a suggestion fixer. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- The rule now provides fix suggestions for violations. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- The parser now handles import.defer() as an ImportExpression. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- Throws when import defer syntax is invalid. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- Provides specialized errors for enum declaration and member shadowing. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- The rule now supports using and await using declarations. (8.64.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.64.0)
- The ArrowFunction type has been tightened. (8.61.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0)
- The TSTypePredicate type has been tightened. (8.61.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0)
- The YieldExpression type has been tightened. (8.61.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0)
- The rule now ignores Array and ReadonlyArray types without type arguments. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- Skips the createIsolatedProgram fallback when projectService is used. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- Literal loop conditions in for and do loops are now allowed by the rule. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- The rule can now automatically remove unused imports. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- The rule is no longer marked as fixable. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- Parsing failures now produce more informative errors. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- Checks base types against the allow list. (8.48.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.1)
- All errors are now gated behind allowInvalidAST. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)
- Redundancy checks now use assignability checking. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)

### Tooling

- TypeScript 6 is now supported. (8.58.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.0)
- Support ESLint v10, allowing projects to use typescript-eslint with the new ESLint release. (8.56.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.56.0)
- CLI outputs now include tseslint.com redirects, providing updated links for developers using command-line tooling. (8.52.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.52.0)
- eslint-plugin now uses Intl.Segmenter instead of graphemer for text segmentation. (8.49.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.49.0)

### Fixes and other changes

- Correctly parenthesizes constraints in optional tuple elements. (8.71.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2)
- Avoids false positives when the rule is used without the typescript-eslint parser. (8.71.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2)
- Ignores type-only references when determining after-used variables. (8.71.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2)
- Applies a safe fix when an optional chain ends with a strict null comparison. (8.71.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2)
- Matches linked packages and packages whose version is missing. (8.71.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2)
- The rule no longer autofixes when the declared return type is unknown. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- Argument checks are skipped for calls without arguments. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- Counts instantiated mapped type templates when checking for unnecessary type parameters. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.2), [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- Identical types are skipped and deep type walks are bounded. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- Partially exported merged declarations now report usedOnlyAsType correctly. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- The rule now checks the constrained type. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- TypeOrValueSpecifier now matches re-exports and global declarations. (8.71.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1)
- Handles a return statement outside any function. (8.71.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.0)
- Generic assertion reports now use a specialized message. (8.71.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.0)
- Literal cases are now always sorted in stable order. (8.71.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.0)
- Respects this: void on class properties. (8.71.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.0)
- Removing await no longer produces autofixes that break code. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Bare any rest parameters now use unknown[] in the rule's handling. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Mapped types with unresolved keys are no longer reported. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Allows void on assignment expressions. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Handles multiple Promise constituents. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- WeakMap spread suggestions are omitted. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Handles union-keyed index access on the left side of nullish assignment. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Accounts for parameter reassignment. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Avoids a false positive for empty objects asserted to Record type aliases. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Suggestion fixes now handle type precedence correctly. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Avoids false positives on tuples with rest elements. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Symlinked paths are resolved when matching files to projects. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Adds missing opening < tokens for type arguments. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Treats Intl.Collator.prototype.compare as bound by the specification. (8.70.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.1)
- Stops reporting fields that read fields declared before them. (8.70.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.0)
- Reports deprecated imported values used in object shorthand properties. (8.70.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.0)
- Removes a false positive on the right-hand side of a nested logical expression. (8.70.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.0)
- Clarifies the parserOptions.project error message, making configuration problems easier to understand. (8.70.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.70.0)
- Uses scope analysis instead of type checking for merged namespaces. (8.69.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0)
- Compares type parameters by constraint instead of name. (8.69.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.69.0)
- Suggestions that create invalid interfaces or export defaults are now ignored. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- Setting ignoreVoid to false no longer produces a false negative in arrow functions. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- Recursive types no longer cause a stack overflow during analysis. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- The autofix no longer breaks code in arrow functions. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- Reports now deduplicate types in unified-signature diagnostics. (8.68.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.68.0)
- The rule now preserves type annotations and does not drop decorators. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- The rule now ignores shadowed built-ins. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- The rule now checks key remapping in mapped types. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- The rule no longer reports defaults used by other overloads. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- The rule now correctly handles calls to shadowed Boolean identifiers. (8.66.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.66.0)
- Stops flagging computed assignments that use a variable key. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- Correctly handles escaped dollar signs at the end of regex literals. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- Reports unbound methods accessed through member expressions on union types. (8.65.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.65.0)
- The rule now uses the array argument type constraint. (8.64.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.71.1), [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.64.0)
- Suggests converting readonly function properties without emitting invalid syntax. (8.63.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.63.0)
- No longer flags a shadowed String() call. (8.63.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.63.0)
- Handles optional-chained calls to overloaded functions correctly. (8.63.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.63.0)
- The fixer now preserves the boolean result for nullable true comparisons. (8.62.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.62.1)
- Trailing binary operator cases now receive a suggestion instead of an automatic fix. (8.62.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.62.1)
- Autofixing no longer removes comments. (8.61.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.1)
- Fixes a precedence bug in the autofix. (8.61.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.1)
- Correctly respects ECMAScript line terminators. (8.61.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.1)
- Object literals at the left edge of expression statements are now parenthesized by the fixer. (8.61.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.62.1), [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.1)
- Avoids false positives for template literal expressions. (8.61.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.1)
- The rule-schema-to-typescript-types tool now respects ECMAScript line terminators. (8.61.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0)
- UnaryExpression.prefix is now always typed as true. (8.61.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.61.0)
- Correct the rule to match ESLint v10 handling. (8.60.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1)
- Respect ECMAScript line terminators in ts-comment rules. (8.60.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.1)
- Fixed the playground TypeScript version selector so developers can select the intended TypeScript version. (8.60.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.60.0)
- Exports Compatible* types from typescript-eslint to resolve a pnpm TypeScript error. (8.59.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4)
- Now throws the underlying error cause when retrieving a parsed configuration file from the TypeScript server. (8.59.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4)
- Prevents a stack overflow when the rule processes recursive types. (8.59.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.4)
- Object destructuring values are now treated as declarations by the rule. (8.59.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2)
- The rule no longer crashes when analyzing recursive template literal types. (8.59.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2)
- The rule tester now declares TypeScript as a peer dependency. (8.59.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.2)
- Treats void as nullish when checking for unnecessary conditions. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Handles instantiation expressions correctly. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Avoids false positives in logical assignment assertions. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Fixes a crash caused by checker.getTypeArguments not being a function. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Preserves index signatures in undefined unions to avoid incorrect lint behavior. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Preserves phantom type arguments during generic inference. (8.59.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.59.1)
- Fixes a false negative when checking type predicate parameters. (8.58.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.1)
- The rule now handles index signatures. (8.58.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.0)
- Fixed a crash in the no-unnecessary-type-arguments rule. (8.58.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.0)
- The rule avoids fixing unknown RegExp flags. (8.58.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.58.0)
- Fixes false positives when unwrapping generic return values. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- Skips false positives for unresolved type parameters. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- Removes a dangling closing parenthesis from the rule's reported output. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- Preserves type alias information when checking readonly parameter types. (8.57.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.2)
- The rule no longer reports properties on intersection types, reducing incorrect lint diagnostics. (8.57.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.1)
- For tagged template literals with invalid escapes, cooked is now null. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- False positives for toString with overloads are fixed. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- The rule is guarded against negative parameter indexes. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- Statically analyzable computed keys are handled correctly. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- False positives involving overloads are fixed. (8.57.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.57.0)
- Parser options are now taken from context.languageOptions, ensuring rules use the current language options. (8.56.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.56.0)
- Removing an entire import no longer leaves a trailing newline. (8.55.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0)
- The rule now reports unnecessary defaults in ternary expressions. (8.55.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.55.0)
- Catch clause scope definitions now report the correct def.name value. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- Utilities now handle environments where FlatESLint is missing. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- Utilities now handle environments where LegacyESLint is missing. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- The rule no longer incorrectly reports a private destructured class member as unused when it is used. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- Scope analysis no longer misidentifies use strict directives. (8.54.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.54.0)
- The fixer now skips interfaces that are default exports, avoiding an incorrect automatic change. (8.53.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.1)
- RuleCreator no longer requires root defaultOptions, simplifying custom rule definitions. (8.53.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.1)
- The rule no longer reports a false positive for parameters corresponding to a rest parameter. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- Syntax checking for using declarations is corrected. (8.53.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.53.0)
- The rule now correctly handles conditional initializers. (8.52.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.52.0)
- The rule no longer crashes or reports false positives in some cases. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- The rule now fixes additional cases by using optional syntax. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- The rule now handles MemberExpression in the final chain position. (8.51.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.51.0)
- The rule now ignores methods that return this. (8.50.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.50.1)
- The rule now correctly handles undefined versus void. (8.50.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.50.1)
- Checks the value flag before resolving an alias. (8.48.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.1)
- Ignored base types are now honored on generic classes. (8.48.1) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.1)
- The rule now ignores cases where the constructor is a typed array. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)
- singleRun is now inferred as true for project service. (8.48.0) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.48.0)
- The rule no longer double-reports computed literal identifiers. (8.46.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.4)
- The fixer now handles functions with the override modifier correctly. (8.46.4) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.4)
- The rule now supports signed numbers when checking duplicate enum values. (8.46.3) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.3)
- The rule now expands union types to retrieve the target property. (8.46.3) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.3)
- The rule now skips optional chaining when applying it could change the result. (8.46.2) — [release notes](https://github.com/typescript-eslint/typescript-eslint/releases/tag/v8.46.2)
