On Friday, May 8, 2015 at 3:07:36 PM UTC+2, Mike Thompson wrote: > Just in case you don't now this ... > > Right now, if you are debugging ClojureScript, you need to be using Chrome 44 > (currently Canary). > > Why? Probably many reasons, but one in particular ... > > If a thrown exception is caught and then rethrown, in Chrome 42 (Stable) the > uncaught exception handler does not display a stacktrace. It just displays > the exception text. (Asserts display okay, but most other exceptions do not). > > Whereas, Chrome 44 (Canary) displays both the exception text and the stack > trace correctly. And that's absolute gold when you are debugging. The > difference between the exception text and the complete stacktrace is chalk > and cheese. > > If you are using core.async this is especially relevant because go-loops > catch exceptions, cleanup and then re-throw them. And, as I said above, it is > these rethrown exceptions which Chrome 42 doesn't seem to handle well. > > But even for code not using core.async it is useful: For example, Reagent > catches exceptions and re-throws them, and this has proved a problem: > https://github.com/reagent-project/reagent/issues/120 > > If you are forced to use Chrome 42 then this might work also (untested): > (set! (.-onerror js/window) #(.error js/console (.-stack %1))) > > Although, in prod, you might want more curation around exceptions. > > -- > Mike
This is very good news. -- Note that posts from new members are moderated - please be patient with your first post. --- You received this message because you are subscribed to the Google Groups "ClojureScript" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/clojurescript.
