-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuebugSomething isn't workingSomething isn't workinglocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.package: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin
Description
Before You File a Bug Report Please Confirm You Have Done The Following...
- I have tried restarting my IDE and the issue persists.
- I have updated to the latest version of the packages.
- I have searched for related issues and found none that matched my issue.
- I have read the FAQ and my problem is not listed.
Playground Link
Repro Code
declare const foo: {
a?: string
}
const bar = foo.a as string | undefined
ESLint Config
module.exports = {
"rules": {
"@typescript-eslint/no-unnecessary-type-assertion": "error"
}
}
tsconfig
Expected Result
no-unnecessary-type-assertion
error
Actual Result
no error
Additional Info
even thought exactOptionalPropertyTypes
changes the meaning of a?: string
to be different to a?: string | undefined
, that difference is not relevant when checking the type of foo.a
, as it will be string | undefined
in both cases
Versions
package | version |
---|---|
@typescript-eslint/eslint-plugin |
5.30.6 |
@typescript-eslint/parser |
5.30.6 |
TypeScript |
4,7,2 |
ESLint |
8.15.0 |
DetachHead, KotlinIsland, JoshuaKGoldberg, juank1809, aike19115 and 2 more
Metadata
Metadata
Assignees
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issuebugSomething isn't workingSomething isn't workinglocked due to agePlease open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.Please open a new issue if you'd like to say more. See https://typescript-eslint.io/contributing.package: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin