loud-rejection
Advanced tools
Weekly downloads
Readme
Make unhandled promise rejections fail loudly instead of the default silent fail
By default, promises fail silently if you don't attach a .catch()
handler to them.
This tool keeps track of unhandled rejections globally. If any remain unhandled at the end of your process, it logs them to STDERR and exits with code 1.
Use this in top-level things like tests, CLI tools, apps, etc, but not in reusable modules.
Not needed in the browser as unhandled rejections are shown in the console.
$ npm install loud-rejection
const loudRejection = require('loud-rejection');
const promiseFunction = require('promise-fn');
// Install the `unhandledRejection` listeners
loudRejection();
promiseFunction();
Without this module it's more verbose and you might even miss some that will fail silently:
const promiseFunction = require('promise-fn');
function error(error) {
console.error(error.stack);
process.exit(1);
}
promiseFunction().catch(error);
Alternatively to the above, you may simply require loud-rejection/register
and the unhandledRejection listener will be automagically installed for you.
This is handy for ES2015 imports:
import 'loud-rejection/register';
Type: Function
Default: console.error
Custom logging function to print the rejected promise. Receives the error stack.
FAQs
Make unhandled promise rejections fail loudly instead of the default silent fail
The npm package loud-rejection receives a total of 4,503,366 weekly downloads. As such, loud-rejection popularity was classified as popular.
We found that loud-rejection demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 2 open source maintainers collaborating on the project.
Did you know?
Socket installs a GitHub app to automatically flag issues on every pull request and report the health of your dependencies. Find out what is inside your node modules and prevent malicious activity before you update the dependencies.