This is a micro post with a tip that I'll need to remember again in the months to come. Node.js can emit warnings on the terminal saying that a rejected promise wasn't caught, or calling an asynchronous function without callback is deprecated.

But where exactly is the original call that causes that warning?

UK EVENTAttend ffconf.org 2024

The conference for people who are passionate about the web. 8 amazing speakers with real human interaction and content you can't just read in a blog post or watch on a tiktok!

Node warnings

Passing the command line argument --trace-warnings gives me a full stacktrace to the originating call that triggered the node warning:

Node warnings after

Note that even though I'm using mocha (via npx) the noe argument is still correctly passed on to node to give me the stacktrace.

You can even go a little further an include a module like clarify to strip the node internals from the stacktrace which makes it a little easier to read.