8000 [scope-manager] should ignore `parserOptions.ecmaVersion` · Issue #2900 · typescript-eslint/typescript-eslint · GitHub
[go: up one dir, main page]

Skip to content
[scope-manager] should ignore parserOptions.ecmaVersion #2900
@bradzacher

Description

@bradzacher

See discussion in jsx-eslint/eslint-plugin-react#2882

There are only two cases in this project that we honour parserOptions.ecmaVersion, and both are in scope-manager:

public isStrictModeSupported() 79C2 : boolean {
return this.#options.ecmaVersion != null && this.#options.ecmaVersion >= 5;
}
public isES6(): boolean {
return this.#options.ecmaVersion != null && this.#options.ecmaVersion >= 6;
}

These usages were brought across when I forked eslint-scope.

However in the context of TS scope analysis - the ecmaVersion makes zero sense.
TS will never treat your code as if it's ES5 or lower - it is always (syntactically and semantically) "ESNext".

Whilst other parts of the ecosystem respects them - and they should continue to - our parser and scope analyser should (like TS itself) always treat code as if it is ESNext in terms of language features.

Metadata

Metadata

Labels

accepting prsGo ahead, send a pull request that resolves this issueenhancementNew feature or requestpackage: scope-managerIssues related to @typescript-eslint/scope-manager

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions

    0