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?
![](/images/ffconf-ad.jpg)
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!
£249+VAT - reserve your place today
Passing the command line argument --trace-warnings
gives me a full stacktrace
to the originating call that triggered the node warning:
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.