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.

Reply via email to