{"action":"created","issue":{"url":"https://api.github.com/repos/octalmage/robotjs/issues/4","labels_url":"https://api.github.com/repos/octalmage/robotjs/issues/4/labels{/name}","comments_url":"https://api.github.com/repos/octalmage/robotjs/issues/4/comments","events_url":"https://api.github.com/repos/octalmage/robotjs/issues/4/events","html_url":"https://github.com/octalmage/robotjs/issues/4","id":55861748,"number":4,"title":"Finalize function naming scheme.","user":{"login":"octalmage","id":142006,"avatar_url":"https://avatars.githubusercontent.com/u/142006?v=3","gravatar_id":"","url":"https://api.github.com/users/octalmage","html_url":"https://github.com/octalmage","followers_url":"https://api.github.com/users/octalmage/followers","following_url":"https://api.github.com/users/octalmage/following{/other_user}","gists_url":"https://api.github.com/users/octalmage/gists{/gist_id}","starred_url":"https://api.github.com/users/octalmage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/octalmage/subscriptions","organizations_url":"https://api.github.com/users/octalmage/orgs","repos_url":"https://api.github.com/users/octalmage/repos","events_url":"https://api.github.com/users/octalmage/events{/privacy}","received_events_url":"https://api.github.com/users/octalmage/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/octalmage/robotjs/labels/brainstorming","name":"brainstorming","color":"5319e7"},{"url":"https://api.github.com/repos/octalmage/robotjs/labels/in%20progress","name":"in progress","color":"ededed"}],"state":"open","locked":false,"assignee":null,"milestone":{"url":"https://api.github.com/repos/octalmage/robotjs/milestones/1","html_url":"https://github.com/octalmage/robotjs/milestones/First%20Stable%20Release.","labels_url":"https://api.github.com/repos/octalmage/robotjs/milestones/1/labels","id":956303,"number":1,"title":"First Stable Release.","description":"Basic functionality needed for a first stable release. ","creator":{"login":"octalmage","id":142006,"avatar_url":"https://avatars.githubusercontent.com/u/142006?v=3","gravatar_id":"","url":"https://api.github.com/users/octalmage","html_url":"https://github.com/octalmage","followers_url":"https://api.github.com/users/octalmage/followers","following_url":"https://api.github.com/users/octalmage/following{/other_user}","gists_url":"https://api.github.com/users/octalmage/gists{/gist_id}","starred_url":"https://api.github.com/users/octalmage/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/octalmage/subscriptions","organizations_url":"https://api.github.com/users/octalmage/orgs","repos_url":"https://api.github.com/users/octalmage/repos","events_url":"https://api.github.com/users/octalmage/events{/privacy}","received_events_url":"https://api.github.com/users/octalmage/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":4,"state":"open","created_at":"2015-01-29T06:30:53Z","updated_at":"2015-05-27T00:27:32Z","due_on":null,"closed_at":null},"comments":14,"created_at":"2015-01-29T06:28:13Z","updated_at":"2015-07-17T19:52:18Z","closed_at":null,"body":"Need to decide function names."},"comment":{"url":"https://api.github.com/repos/octalmage/robotjs/issues/comments/122392981","html_url":"https://github.com/octalmage/robotjs/issues/4#issuecomment-122392981","issue_url":"https://api.github.com/repos/octalmage/robotjs/issues/4","id":122392981,"user":{"login":"ariporad","id":1817508,"avatar_url":"https://avatars.githubusercontent.com/u/1817508?v=3","gravatar_id":"","url":"https://api.github.com/users/ariporad","html_url":"https://github.com/ariporad","followers_url":"https://api.github.com/users/ariporad/followers","following_url":"https://api.github.com/users/ariporad/following{/other_user}","gists_url":"https://api.github.com/users/ariporad/gists{/gist_id}","starred_url":"https://api.github.com/users/ariporad/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ariporad/subscriptions","organizations_url":"https://api.github.com/users/ariporad/orgs","repos_url":"https://api.github.com/users/ariporad/repos","events_url":"https://api.github.com/users/ariporad/events{/privacy}","received_events_url":"https://api.github.com/users/ariporad/received_events","type":"User","site_admin":false},"created_at":"2015-07-17T19:52:18Z","updated_at":"2015-07-17T19:52:18Z","body":"(First of all, I'm new here. Sorry if I shouldn't just be jumping in. I really like the idea of this project, and have been looking for something to contribute to. I don't know C/C++, but I'm goodish with node).\r\n\r\n@RangerMauve Promises would work, but they're hard to chain. The trouble with them is that they return a promise, not robot.\r\n\r\nIMHO, the way to do it would be to throw an error. It seems like (especially if this is supposed to replace AutoHotKey), that most of the time there will be a human using in, to deal with an error. If not, try/catch. What jQuery does is they emit error events, which would work. Have a global error handler that prints and quits."}}