-
-
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 issueenhancementNew feature or requestNew feature or requestlocked 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
for await (const s of ['no', 'thenables', 'here']) {}
export { }
ESLint Config
module.exports = {
"rules": {
"@typescript-eslint/await-thenable": "error"
}
}
tsconfig
Expected Result
I expect that the first line should flag due to for await
being used on something that does not have a Symbol.asyncIterator
.
Actual Result
No error.
Additional Info
Note that it's unambiguous IMO that the example given should flag. However, I, personally, would also like for the rule to flag on misused for-await-of, where the iterable is a synchronous iterator over promises. That should be written as an ordinary for loop. It's only a true async iterable that should be allowed to be iterated over in a for-await-of loop.
Refresher on for-await-of: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/for-await...of
zanminkian and Zamiell
Metadata
Metadata
Assignees
Labels
accepting prsGo ahead, send a pull request that resolves this issueGo ahead, send a pull request that resolves this issueenhancementNew feature or requestNew feature or requestlocked 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