У меня есть такая функция:
function foo() {
  throw new Error('`foo` has been removed in favor of `bar`')
}
Когда кто-то звонит foo, я хочу, чтобы трассировка стека (вывод ошибки) указывала на сайт вызова foo, а не на строку throw внутри foo.
Например, я получаю следующее:
$ node test.js
/home/ubuntu/tmp/test.js:2
  throw new Error('`foo` has been removed in favor of `bar`')
        ^
Error: `foo` has been removed in favor of `bar`
    at foo (/home/ubuntu/tmp/test.js:2:9)
    at Object.<anonymous> (/home/ubuntu/tmp/test.js:5:1)
    ...
Как мне это получить?
$ node test.js
/home/ubuntu/tmp/test.js:5
  foo()
  ^
Error: `foo` has been removed in favor of `bar`
    at Object.<anonymous> (/home/ubuntu/tmp/test.js:5:1)
    ...