Skip to content

[no-func-assign] Duplicates TypeScript's TS2539 error #983

Closed
@OliverSieweke

Description

@OliverSieweke

Recommended ESLint rules that are already handled by TypeScript are turned off in plugin:@typescript-eslint/recommended.
The recommended no-func-assign rule should be included in the list as it triggers an ESLint as well as a TypeScript error.

Repro

{
  "extends": [
    "eslint:recommended",
    "plugin:@typescript-eslint/eslint-recommended",
    "plugin:@typescript-eslint/recommended"
  ]
}
function foo() {}
foo = bar;

Expected Result

A simple TypeScript error for line 2:

  • TS2539: Cannot assign to 'foo' because it is not a variable.

Actual Result

A duplicate error for line 2, one coming from TypeScript the other one coming from ESLint:

  • TS2539: Cannot assign to 'foo' because it is not a variable.
  • ESLint: 'foo' is a function.(no-func-assign)

Additional Info

Versions

package version
@typescript-eslint/eslint-plugin 2.3.0
@typescript-eslint/parser 2.3.0
TypeScript 3.6.3
ESLint 6.4.0
node 10.16.3
npm 6.9.0

Metadata

Metadata

Assignees

No one assigned

    Labels

    breaking changeThis change will require a new major version to be releasedhas prthere is a PR raised to close thispackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginrecommended-rulesDiscussion about recommended rule sets

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions