Debuggers and async/await should work together better: I have testcases.

Alex Vincent ajvincent at gmail.com
Fri Dec 1 09:27:27 UTC 2017


A few minutes ago, I released version 0.8.2 of the es7-membrane project.
[1]  I've been using Mozilla Firefox primarily to debug it as I go, and I
find the built-in JavaScript debugger has a few quirks when asynchronous
functions come into the mix...

Most notably, when I step over an "await" statement, the debugger treats it
as if I'm exiting the function altogether.

Also, exceptions thrown within the async functions after an await tend not
to show up when I'm stepping through the code.

I know I should be filing this in Bugzilla, and I will this weekend... I'm
posting this here for all JS engine & debugging tools teams, as a
heads-up:  when it comes to async functions, the step-through-code user
experience is subpar.

As for tests people can step through to see what I'm talking about:  see
[1] for the source under docs/gui/tests.  To run the tests, type |npm run
gui-tests|.  I use Karma to implement the tests. The karma.conf.js file in
the root directory has a "singleRun" setting that developers can change to
false for debugging purposes (attaching breakpoints to a test, for example).

If it's on a weekend, I can be available to demonstrate what I'm referring
to, or to show people how to reproduce these behaviors.

Thanks!



Alex Vincent
Hayward, CA, U.S.A.

[1] https://github.com/ajvincent/es7-membrane


-- 
"The first step in confirming there is a bug in someone else's work is
confirming there are no bugs in your own."
-- Alexander J. Vincent, June 30, 2001
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.mozilla.org/pipermail/es-discuss/attachments/20171201/69ef0e3e/attachment.html>


More information about the es-discuss mailing list