{"action":"created","issue":{"url":"https://api.github.com/repos/svaarala/duktape/issues/286","labels_url":"https://api.github.com/repos/svaarala/duktape/issues/286/labels{/name}","comments_url":"https://api.github.com/repos/svaarala/duktape/issues/286/comments","events_url":"https://api.github.com/repos/svaarala/duktape/issues/286/events","html_url":"https://github.com/svaarala/duktape/pull/286","id":102066637,"number":286,"title":"Implement debugger halt-on-throw","user":{"login":"fatcerberus","id":4097841,"avatar_url":"https://avatars.githubusercontent.com/u/4097841?v=3","gravatar_id":"","url":"https://api.github.com/users/fatcerberus","html_url":"https://github.com/fatcerberus","followers_url":"https://api.github.com/users/fatcerberus/followers","following_url":"https://api.github.com/users/fatcerberus/following{/other_user}","gists_url":"https://api.github.com/users/fatcerberus/gists{/gist_id}","starred_url":"https://api.github.com/users/fatcerberus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fatcerberus/subscriptions","organizations_url":"https://api.github.com/users/fatcerberus/orgs","repos_url":"https://api.github.com/users/fatcerberus/repos","events_url":"https://api.github.com/users/fatcerberus/events{/privacy}","received_events_url":"https://api.github.com/users/fatcerberus/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":109,"created_at":"2015-08-20T05:38:00Z","updated_at":"2015-09-14T16:23:38Z","closed_at":null,"pull_request":{"url":"https://api.github.com/repos/svaarala/duktape/pulls/286","html_url":"https://github.com/svaarala/duktape/pull/286","diff_url":"https://github.com/svaarala/duktape/pull/286.diff","patch_url":"https://github.com/svaarala/duktape/pull/286.patch"},"body":"When the debugger is attached and an error is thrown with no active catch site, either a runtime error thrown by Duktape or directly by Ecmascript code, the debug client is notified and execution is paused at the error site to allow the developer to view program state.  This is useful, as this information will be lost once the stack is unwound.\r\n\r\nImplementation checklist:\r\n- [x] Implement the basic logic for debugger error intercept.\r\n- [x] Add a Throw notification to alert the client to the error.\r\n- [x] Ensure yield/resume awareness to avoid spurious pauses.\r\n- [x] Fix C stack overflow when an error is thrown at max recursion (double error pileup).\r\n- [x] Fix crashes when intercepting errors originating from the compiler (fixed by not intercepting them).\r\n- [x] Fix an assert failure when execution is stopped inside a Duktape/C call.\r\n- [x] Finalize changes and ensure consistency with Duktape codebase.\r\n"},"comment":{"url":"https://api.github.com/repos/svaarala/duktape/issues/comments/140132641","html_url":"https://github.com/svaarala/duktape/pull/286#issuecomment-140132641","issue_url":"https://api.github.com/repos/svaarala/duktape/issues/286","id":140132641,"user":{"login":"fatcerberus","id":4097841,"avatar_url":"https://avatars.githubusercontent.com/u/4097841?v=3","gravatar_id":"","url":"https://api.github.com/users/fatcerberus","html_url":"https://github.com/fatcerberus","followers_url":"https://api.github.com/users/fatcerberus/followers","following_url":"https://api.github.com/users/fatcerberus/following{/other_user}","gists_url":"https://api.github.com/users/fatcerberus/gists{/gist_id}","starred_url":"https://api.github.com/users/fatcerberus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/fatcerberus/subscriptions","organizations_url":"https://api.github.com/users/fatcerberus/orgs","repos_url":"https://api.github.com/users/fatcerberus/repos","events_url":"https://api.github.com/users/fatcerberus/events{/privacy}","received_events_url":"https://api.github.com/users/fatcerberus/received_events","type":"User","site_admin":false},"created_at":"2015-09-14T16:23:38Z","updated_at":"2015-09-14T16:23:38Z","body":"Alright, done.  How does it look now?"}}