eslint-plugin-promise icon indicating copy to clipboard operation
eslint-plugin-promise copied to clipboard

`always-return`: enable `ignoreLastCallback` by default

Open gurgunday opened this issue 1 year ago • 0 comments
trafficstars

Description

I think the following is a perfectly valid use case, and I understand the argument against it: possible race conditions, async side effects, etc. But this is the nature of these callbacks, and, the rule is not enforced for .catch anyway, so we could argue the same thing for it too

In reality, this pattern is useful, and having it banned in the recommended config feels a little too intrusive for me

I can provide a PR

Steps to Reproduce

  import("/assets/path/deps/utils.js")
    .then((module) => {
      window.movePicCarousel = module.movePicCarousel; // the last callback doesn't need to return anything
    })
    .catch(console.error);

Expected behavior: [What you expect to happen] No errors (like when ignoreLastCallback: true)

Actual behavior: [What actually happens] Error

gurgunday avatar Feb 17 '24 07:02 gurgunday