-
-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed as not planned
Closed as not planned
Copy link
Labels
enhancement: plugin rule optionNew rule option for an existing eslint-plugin ruleNew rule option for an existing eslint-plugin ruleevaluating community engagementwe're looking for community engagement on this issue to show that this problem is widely importantwe're looking for community engagement on this issue to show that this problem is widely importantpackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin
Description
Before You File a Proposal Please Confirm You Have Done The Following...
- I have searched for related issues and found none that match my proposal.
- I have searched the current rule list and found no rules that match my proposal.
- I have read the FAQ and my problem is not listed.
My proposal is suitable for this project
- I believe my proposal would be useful to the broader TypeScript community (meaning it is not a niche proposal).
Link to the rule's documentation
https://typescript-eslint.io/rules/prefer-promise-reject-errors/
Description
Currently, a user can call AbortSignal.abort("foo")
or new AbortController().abort("foo")
with anything. But doing so within a fetch
request will throw the provided argument. In contrary a AbortSignal.timeout(1234)
and new AbortController().abort()
will throw a DOMException
.
I'd like to ensure that the arguments should be enforced to be instances of Error
as well.
It could make sense to extend rather this rule: https://typescript-eslint.io/rules/only-throw-error
Fail
new AbortController().abort("foo");
AbortSignal.abort("foo");
Pass
new AbortController().abort(new Error("foo"));
AbortSignal.abort(new DOMException("foo"));
Additional Info
No response
turbocrime
Metadata
Metadata
Assignees
Labels
enhancement: plugin rule optionNew rule option for an existing eslint-plugin ruleNew rule option for an existing eslint-plugin ruleevaluating community engagementwe're looking for community engagement on this issue to show that this problem is widely importantwe're looking for community engagement on this issue to show that this problem is widely importantpackage: eslint-pluginIssues related to @typescript-eslint/eslint-pluginIssues related to @typescript-eslint/eslint-plugin