Skip to content
This repository was archived by the owner on Jul 18, 2024. It is now read-only.

Conversation

@ian-craig
Copy link
Contributor

This PR adds a "MapOnly" option for call stack deminification which skips parsing the JS file to produce a function map. Instead, it does a best-effort to deminify method names using the deminified symbol from the call site.

In the full mode, I've also added better exception handling in function map generation to fall back to the MapOnly mode when JSParser throws an exception (for example on modern JS syntax it doesn't understand), or it can't find the JS.

Fixes #66, at least to the point where file names, line numbers and most method names are deminified.

StackTraceDeminifierMapOnlyEndToEndTests is a fork of StackTraceDeminifierEndToEndTests with minor tweaks to show the output - anonymous function frames now show the "minified" name (e.g. "Anonymous function") instead of searching up for a containing method name, and the last frame we are unable to find a method name for as we don't have a caller.

@ian-craig ian-craig requested a review from christiango October 13, 2020 21:27
@christiango christiango merged commit ef29881 into microsoft:master Oct 13, 2020
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

ES6 support

3 participants