Monday, November 5, 2018

Re: Deobfuscated stack trace message and line-specific stack traces

Depending on your browser versions you support, you could try enabling source maps for other user agents as well. Currently it is only active for safari permutation. If you deploy the generated source maps, the StackTraceDeobfuscator could use them on the server to make better stack traces.

You would need to add some additional rebind rules to your project in the same manner as in https://github.com/gwtproject/gwt/blob/master/user/src/com/google/gwt/core/CoreWithUserAgent.gwt.xml

At the end it all depends on wether or not the browser reports column numbers in addition to line numbers then throwing an error. Because in GWT generated JS every method has its own line and is a one-liner (white spaces, new lines within method removed) itself, browsers which only report line numbers basically only report the JS method that caused the error. Only with a column number it is possible to also figure out the expression within the method. Of course GWT could technically produce a JS file which has every single statement/expression on its own line, but that would add a significant amount of new line characters and thus would make your app larger (even though gzip compression might mitigate that issue). If GWT would do that, then column numbers wouldn't be required.

Using the above source maps based solution only works in browsers which support column numbers because source maps encoding is based on column numbers. See http://www.mattzeunert.com/2016/02/14/how-do-source-maps-work.html if interested.

-- J.

--
You received this message because you are subscribed to the Google Groups "GWT Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to google-web-toolkit+unsubscribe@googlegroups.com.
To post to this group, send email to google-web-toolkit@googlegroups.com.
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.

No comments:

Post a Comment