take ownership of prepareStackTrace for upstream v8 changes
These changes exist for a few reasons:
- We have a double-decoration problem where people need to use
process.binding('util')
to stop node from decorating errors if they want to do their own thing. - V8 is making upstream changes to Error.prepareStackTrace which scope it per-context and can't land those until we fix how we handle Error.prepareStackTrace in repl
- Error stack decoration was not very consistent, as it pinged around between two methods in C++ and JS that had to be called in the correct order
Closes #21958 (closed)
/cc @BridgeAR @joyeecheung @bmeck @jdalton @mmarchini @ljharb
Checklist
-
make -j4 test
(UNIX), orvcbuild test
(Windows) passes -
tests and/or benchmarks are included -
documentation is changed or added -
commit message follows commit guidelines