eslint-plugin-promise
eslint-plugin-promise copied to clipboard
`promise/always-return` should not be reported when process exits
Description
If I do process.exit(0); in a .then callback no return value should be expected from the callback as after the exit the rest of the code is unreachable.
Steps to Reproduce
void fetch(
'my-url',
{
method: 'POST',
headers: {
// eslint-disable-next-line @typescript-eslint/naming-convention
'Content-Type': 'application/json'
},
body: JSON.stringify({...})
}
// eslint-disable-next-line promise/always-return (this should not be needed)
).then(() => {
task.stop();
process.exit(0);
});
Expected behavior: not to report issue when process exists
Actual behavior: issue reported
Versions
[Please fill this in if you are submitting a bug report]
- Node version: 21.6.1
- ESLint version: ^8.23.1
- eslint-plugin-promise version: ^6.0.0
I think you should use eslint-plugin-n with process-exit-as-throw. If you do then something probably is wrong 🤔
But, I am not sure that this should be in the promise plugin.
I think it is reasonable to have an exception like this specific to Promise rules.
:tada: This issue has been resolved in version 6.6.0 :tada:
The release is available on:
Your semantic-release bot :package::rocket: