{"action":"created","issue":{"url":"https://api.github.com/repos/victor-torres/atom-hg/issues/15","repository_url":"https://api.github.com/repos/victor-torres/atom-hg","labels_url":"https://api.github.com/repos/victor-torres/atom-hg/issues/15/labels{/name}","comments_url":"https://api.github.com/repos/victor-torres/atom-hg/issues/15/comments","events_url":"https://api.github.com/repos/victor-torres/atom-hg/issues/15/events","html_url":"https://github.com/victor-torres/atom-hg/issues/15","id":149542160,"number":15,"title":"Make HgUtils async","user":{"login":"victor-torres","id":3674112,"avatar_url":"https://avatars.githubusercontent.com/u/3674112?v=3","gravatar_id":"","url":"https://api.github.com/users/victor-torres","html_url":"https://github.com/victor-torres","followers_url":"https://api.github.com/users/victor-torres/followers","following_url":"https://api.github.com/users/victor-torres/following{/other_user}","gists_url":"https://api.github.com/users/victor-torres/gists{/gist_id}","starred_url":"https://api.github.com/users/victor-torres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/victor-torres/subscriptions","organizations_url":"https://api.github.com/users/victor-torres/orgs","repos_url":"https://api.github.com/users/victor-torres/repos","events_url":"https://api.github.com/users/victor-torres/events{/privacy}","received_events_url":"https://api.github.com/users/victor-torres/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":1,"created_at":"2016-04-19T18:22:33Z","updated_at":"2016-04-19T18:23:23Z","closed_at":null,"body":"spawnSync blocks NodeJS and we can't have another process/thread running it such as a web worker... We have to refactor HgUtils class to use spawn or exec, the asynchronous version of this command. Basically we need to encapsulate some methods into promises and consume them with .then() in HgRepositoryAsync class."},"comment":{"url":"https://api.github.com/repos/victor-torres/atom-hg/issues/comments/212055185","html_url":"https://github.com/victor-torres/atom-hg/issues/15#issuecomment-212055185","issue_url":"https://api.github.com/repos/victor-torres/atom-hg/issues/15","id":212055185,"user":{"login":"victor-torres","id":3674112,"avatar_url":"https://avatars.githubusercontent.com/u/3674112?v=3","gravatar_id":"","url":"https://api.github.com/users/victor-torres","html_url":"https://github.com/victor-torres","followers_url":"https://api.github.com/users/victor-torres/followers","following_url":"https://api.github.com/users/victor-torres/following{/other_user}","gists_url":"https://api.github.com/users/victor-torres/gists{/gist_id}","starred_url":"https://api.github.com/users/victor-torres/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/victor-torres/subscriptions","organizations_url":"https://api.github.com/users/victor-torres/orgs","repos_url":"https://api.github.com/users/victor-torres/repos","events_url":"https://api.github.com/users/victor-torres/events{/privacy}","received_events_url":"https://api.github.com/users/victor-torres/received_events","type":"User","site_admin":false},"created_at":"2016-04-19T18:23:23Z","updated_at":"2016-04-19T18:23:23Z","body":"@mrstebo I further investigated based on your suggestions and I can confirm the blame is in the spawnSync guy."}}