You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The no-callback-in-promise rule only checks for CallExpressions. It does not check if a callback is passed to a third-party like setTimeout(callback). I think any time a callback is passed to another function, the assumption should be that the callback will be called.
Steps to Reproduce
functionwait(callback){returnPromise.resolve().then(()=>{setTimeout(()=>callback());// this failssetTimeout(callback);// this does not fail});}
Description
The
no-callback-in-promise
rule only checks for CallExpressions. It does not check if a callback is passed to a third-party likesetTimeout(callback)
. I think any time a callback is passed to another function, the assumption should be that the callback will be called.Steps to Reproduce
Expected behavior:
no-callback-in-promise
flags errorActual behavior:
no-callback-in-promise
rule does not flag errorVersions
Additional Information
Potential implementation: in https://github.com/xjamundx/eslint-plugin-promise/blob/5b935bdd3c3760a2e58eea9b89c86b6d3243e321/rules/lib/is-callback.js, you can potentially check if any of the CallExpressions's
arguments
is a named callback.The text was updated successfully, but these errors were encountered: