Wednesday, February 23, 2011

Apps Script's New Debugger, improved Contacts, and more...

Last night we released a new version of Apps Script with a major new feature - the Apps Script Debugger.  A debugger is a tool that helps you to understand what's happening as your code runs, and it can be a huge help in figuring out why your code isn't running the way you intended.

At its most basic, the debugger lets you set a 'breakpoint', and then inspect the state of the script at that point.  A breakpoint is a signal to Apps Script to stop running your code, and you can set a breakpoint on any line of code, just by clicking on the line number.

Then, simply run the script using the 'bug' toolbar icon instead of the usual 'play' button, and the script will run only as far as the first breakpoint.  The debugger panel then allows you to inspect the state of all of the variables in the script.  You can find a more detailed introduction to the debugger in the user guide.

We have also made a major update to the Google Contacts Service.  Along with the numerous bug fixes you'll also see a performance increase and better memory utilization.  The other significant change relates to how we handle 'lists' inside an individual contact - now you can correctly handle multiple email addresses, postal addresses, IM addresses, phone numbers, urls and even dates.

Lastly, we have been listening to feedback, reading the forums, and watching the issue tracker very closely.  We have addressed over 200 bugs and feature requests so far this year; a detailed list of visible changes is available in our release notes.  All that to say that we truly value your feedback - thank you for helping us make Apps Script even better.


  1. Outstanding!

    Thanks for all the work done!

  2. Nice work! Web-Only (as in cloud) coding, I love it!

  3. Love the productivity of the debugger in the IDE and the fact you've cleared so many issues. Well done GAS team, keep it coming!

  4. Superb ... does the debugger work with installable event handlers as well?

  5. Thanks for all the positive comments... Debugger doesn't work with installable event handlers - yet!

  6. Hello Evin,

    Debugger works well through OnClock() as far as I can see, not tried through other ...

    On the other hand it seems that the feature of running through the code and parsing it for basic syntax as we save it, seems to be non functional?

    Any idea about that ?

  7. I think it may be localized to semi column at the end of lines in particular :)

  8. Re the following bug fix:

    "toString() returns a string that represents the value of the object (where possible / feasible)."

    As of today (3/5), this function still returns 'generic' for app.getElementById. Also, what object stores app.getElementById so we can use for(p in app) syntax ?

  9. While it's all great, I don't see any serious "business tasks automation" possible with issue #445 still being a bug with status 'New' for over a month. =)