{"action":"created","comment":{"url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/comments/211423804","pull_request_review_id":147841682,"id":211423804,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxMTQyMzgwNA==","diff_hunk":"@@ -106,31 +87,26 @@ export class WindowsRoutingService implements RoutingService {\n         const netErr = err as NetError;\n         if (netErr.errno === 'ENOENT') {\n           console.info(`Routing service not running. Attempting to start.`);\n-          // Prompt the user for admimn permissions to start the routing service.\n+          // Prompt the user for admin permissions to start the routing service.\n           sudo.exec(SERVICE_START_COMMAND, {name: 'Outline'}, (sudoError, stdout, stderr) => {\n             if (sudoError) {\n-              if (/service has already been started|net helpmsg 2182/i.test(sudoError.message)) {\n-                // Wait for the service to start before sending the request.","path":"electron/routing_service.ts","position":70,"original_position":70,"commit_id":"3153005c9152408772bd1ef03ae65acaf60f7111","original_commit_id":"3153005c9152408772bd1ef03ae65acaf60f7111","user":{"login":"alalamav","id":2132122,"node_id":"MDQ6VXNlcjIxMzIxMjI=","avatar_url":"https://avatars3.githubusercontent.com/u/2132122?v=4","gravatar_id":"","url":"https://api.github.com/users/alalamav","html_url":"https://github.com/alalamav","followers_url":"https://api.github.com/users/alalamav/followers","following_url":"https://api.github.com/users/alalamav/following{/other_user}","gists_url":"https://api.github.com/users/alalamav/gists{/gist_id}","starred_url":"https://api.github.com/users/alalamav/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/alalamav/subscriptions","organizations_url":"https://api.github.com/users/alalamav/orgs","repos_url":"https://api.github.com/users/alalamav/repos","events_url":"https://api.github.com/users/alalamav/events{/privacy}","received_events_url":"https://api.github.com/users/alalamav/received_events","type":"User","site_admin":false},"body":"IIRC, the timeout was necessary to give the service a chance to start. Otherwise, there could be a race between the service starting up and sending the request. However, if you have seen it succeed without it in your testing, let's remove it.\r\n","created_at":"2018-08-20T22:11:42Z","updated_at":"2018-08-20T22:38:57Z","html_url":"https://github.com/Jigsaw-Code/outline-client/pull/218#discussion_r211423804","pull_request_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/comments/211423804"},"html":{"href":"https://github.com/Jigsaw-Code/outline-client/pull/218#discussion_r211423804"},"pull_request":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218"}}},"pull_request":{"url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218","id":209218734,"node_id":"MDExOlB1bGxSZXF1ZXN0MjA5MjE4NzM0","html_url":"https://github.com/Jigsaw-Code/outline-client/pull/218","diff_url":"https://github.com/Jigsaw-Code/outline-client/pull/218.diff","patch_url":"https://github.com/Jigsaw-Code/outline-client/pull/218.patch","issue_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/218","number":218,"state":"open","locked":false,"title":"fix sudo-prompt error reporting, simplify call chain","user":{"login":"trevj","id":5142116,"node_id":"MDQ6VXNlcjUxNDIxMTY=","avatar_url":"https://avatars3.githubusercontent.com/u/5142116?v=4","gravatar_id":"","url":"https://api.github.com/users/trevj","html_url":"https://github.com/trevj","followers_url":"https://api.github.com/users/trevj/followers","following_url":"https://api.github.com/users/trevj/following{/other_user}","gists_url":"https://api.github.com/users/trevj/gists{/gist_id}","starred_url":"https://api.github.com/users/trevj/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/trevj/subscriptions","organizations_url":"https://api.github.com/users/trevj/orgs","repos_url":"https://api.github.com/users/trevj/repos","events_url":"https://api.github.com/users/trevj/events{/privacy}","received_events_url":"https://api.github.com/users/trevj/received_events","type":"User","site_admin":false},"body":"Had a report that I suspect is due to the user not having admin permissions but I can't be sure because sudo-prompt error reporting is currently broken. This addresses that, simplifies the call chain a bit (my bad, I was lazy last time I was in here), and removes the timeout - @alalamav I didn't see any evidence that it was necessary, can you remember the exact story?","created_at":"2018-08-17T18:04:02Z","updated_at":"2018-08-20T22:38:57Z","closed_at":null,"merged_at":null,"merge_commit_sha":"6137bf012573efb683d18de390732a9c85ff62ef","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218/commits","review_comments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218/comments","review_comment_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/comments{/number}","comments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/218/comments","statuses_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/statuses/3153005c9152408772bd1ef03ae65acaf60f7111","head":{"label":"Jigsaw-Code:trevj-sudo-prompt-reporting","ref":"trevj-sudo-prompt-reporting","sha":"3153005c9152408772bd1ef03ae65acaf60f7111","user":{"login":"Jigsaw-Code","id":19845815,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5ODQ1ODE1","avatar_url":"https://avatars0.githubusercontent.com/u/19845815?v=4","gravatar_id":"","url":"https://api.github.com/users/Jigsaw-Code","html_url":"https://github.com/Jigsaw-Code","followers_url":"https://api.github.com/users/Jigsaw-Code/followers","following_url":"https://api.github.com/users/Jigsaw-Code/following{/other_user}","gists_url":"https://api.github.com/users/Jigsaw-Code/gists{/gist_id}","starred_url":"https://api.github.com/users/Jigsaw-Code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jigsaw-Code/subscriptions","organizations_url":"https://api.github.com/users/Jigsaw-Code/orgs","repos_url":"https://api.github.com/users/Jigsaw-Code/repos","events_url":"https://api.github.com/users/Jigsaw-Code/events{/privacy}","received_events_url":"https://api.github.com/users/Jigsaw-Code/received_events","type":"Organization","site_admin":false},"repo":{"id":125118418,"node_id":"MDEwOlJlcG9zaXRvcnkxMjUxMTg0MTg=","name":"outline-client","full_name":"Jigsaw-Code/outline-client","owner":{"login":"Jigsaw-Code","id":19845815,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5ODQ1ODE1","avatar_url":"https://avatars0.githubusercontent.com/u/19845815?v=4","gravatar_id":"","url":"https://api.github.com/users/Jigsaw-Code","html_url":"https://github.com/Jigsaw-Code","followers_url":"https://api.github.com/users/Jigsaw-Code/followers","following_url":"https://api.github.com/users/Jigsaw-Code/following{/other_user}","gists_url":"https://api.github.com/users/Jigsaw-Code/gists{/gist_id}","starred_url":"https://api.github.com/users/Jigsaw-Code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jigsaw-Code/subscriptions","organizations_url":"https://api.github.com/users/Jigsaw-Code/orgs","repos_url":"https://api.github.com/users/Jigsaw-Code/repos","events_url":"https://api.github.com/users/Jigsaw-Code/events{/privacy}","received_events_url":"https://api.github.com/users/Jigsaw-Code/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Jigsaw-Code/outline-client","description":"Outline clients, developed by Jigsaw. The Outline clients use the popular Shadowsocks protocol, and lean on the Cordova and Electron frameworks to support Windows, Android / ChromeOS, iOS and macOS.","fork":false,"url":"https://api.github.com/repos/Jigsaw-Code/outline-client","forks_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/forks","keys_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/teams","hooks_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/hooks","issue_events_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/events{/number}","events_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/events","assignees_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/assignees{/user}","branches_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/branches{/branch}","tags_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/tags","blobs_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/refs{/sha}","trees_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/statuses/{sha}","languages_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/languages","stargazers_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/stargazers","contributors_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/contributors","subscribers_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/subscribers","subscription_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/subscription","commits_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/commits{/sha}","git_commits_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/commits{/sha}","comments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/comments{/number}","issue_comment_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/comments{/number}","contents_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/contents/{+path}","compare_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/merges","archive_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/downloads","issues_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues{/number}","pulls_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls{/number}","milestones_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/milestones{/number}","notifications_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/labels{/name}","releases_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/releases{/id}","deployments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/deployments","created_at":"2018-03-13T21:42:30Z","updated_at":"2018-08-20T16:11:19Z","pushed_at":"2018-08-20T22:12:02Z","git_url":"git://github.com/Jigsaw-Code/outline-client.git","ssh_url":"git@github.com:Jigsaw-Code/outline-client.git","clone_url":"https://github.com/Jigsaw-Code/outline-client.git","svn_url":"https://github.com/Jigsaw-Code/outline-client","homepage":"https://getoutline.org/","size":42764,"stargazers_count":1677,"watchers_count":1677,"language":"TypeScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":262,"mirror_url":null,"archived":false,"open_issues_count":29,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":262,"open_issues":29,"watchers":1677,"default_branch":"master"}},"base":{"label":"Jigsaw-Code:master","ref":"master","sha":"af864d2b33dc55ac7378e7cb139a7ee32bbcca9e","user":{"login":"Jigsaw-Code","id":19845815,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5ODQ1ODE1","avatar_url":"https://avatars0.githubusercontent.com/u/19845815?v=4","gravatar_id":"","url":"https://api.github.com/users/Jigsaw-Code","html_url":"https://github.com/Jigsaw-Code","followers_url":"https://api.github.com/users/Jigsaw-Code/followers","following_url":"https://api.github.com/users/Jigsaw-Code/following{/other_user}","gists_url":"https://api.github.com/users/Jigsaw-Code/gists{/gist_id}","starred_url":"https://api.github.com/users/Jigsaw-Code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jigsaw-Code/subscriptions","organizations_url":"https://api.github.com/users/Jigsaw-Code/orgs","repos_url":"https://api.github.com/users/Jigsaw-Code/repos","events_url":"https://api.github.com/users/Jigsaw-Code/events{/privacy}","received_events_url":"https://api.github.com/users/Jigsaw-Code/received_events","type":"Organization","site_admin":false},"repo":{"id":125118418,"node_id":"MDEwOlJlcG9zaXRvcnkxMjUxMTg0MTg=","name":"outline-client","full_name":"Jigsaw-Code/outline-client","owner":{"login":"Jigsaw-Code","id":19845815,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE5ODQ1ODE1","avatar_url":"https://avatars0.githubusercontent.com/u/19845815?v=4","gravatar_id":"","url":"https://api.github.com/users/Jigsaw-Code","html_url":"https://github.com/Jigsaw-Code","followers_url":"https://api.github.com/users/Jigsaw-Code/followers","following_url":"https://api.github.com/users/Jigsaw-Code/following{/other_user}","gists_url":"https://api.github.com/users/Jigsaw-Code/gists{/gist_id}","starred_url":"https://api.github.com/users/Jigsaw-Code/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Jigsaw-Code/subscriptions","organizations_url":"https://api.github.com/users/Jigsaw-Code/orgs","repos_url":"https://api.github.com/users/Jigsaw-Code/repos","events_url":"https://api.github.com/users/Jigsaw-Code/events{/privacy}","received_events_url":"https://api.github.com/users/Jigsaw-Code/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/Jigsaw-Code/outline-client","description":"Outline clients, developed by Jigsaw. The Outline clients use the popular Shadowsocks protocol, and lean on the Cordova and Electron frameworks to support Windows, Android / ChromeOS, iOS and macOS.","fork":false,"url":"https://api.github.com/repos/Jigsaw-Code/outline-client","forks_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/forks","keys_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/keys{/key_id}","collaborators_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/teams","hooks_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/hooks","issue_events_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/events{/number}","events_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/events","assignees_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/assignees{/user}","branches_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/branches{/branch}","tags_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/tags","blobs_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/refs{/sha}","trees_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/trees{/sha}","statuses_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/statuses/{sha}","languages_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/languages","stargazers_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/stargazers","contributors_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/contributors","subscribers_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/subscribers","subscription_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/subscription","commits_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/commits{/sha}","git_commits_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/git/commits{/sha}","comments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/comments{/number}","issue_comment_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/comments{/number}","contents_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/contents/{+path}","compare_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/compare/{base}...{head}","merges_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/merges","archive_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/downloads","issues_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues{/number}","pulls_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls{/number}","milestones_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/milestones{/number}","notifications_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/labels{/name}","releases_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/releases{/id}","deployments_url":"https://api.github.com/repos/Jigsaw-Code/outline-client/deployments","created_at":"2018-03-13T21:42:30Z","updated_at":"2018-08-20T16:11:19Z","pushed_at":"2018-08-20T22:12:02Z","git_url":"git://github.com/Jigsaw-Code/outline-client.git","ssh_url":"git@github.com:Jigsaw-Code/outline-client.git","clone_url":"https://github.com/Jigsaw-Code/outline-client.git","svn_url":"https://github.com/Jigsaw-Code/outline-client","homepage":"https://getoutline.org/","size":42764,"stargazers_count":1677,"watchers_count":1677,"language":"TypeScript","has_issues":true,"has_projects":false,"has_downloads":true,"has_wiki":false,"has_pages":false,"forks_count":262,"mirror_url":null,"archived":false,"open_issues_count":29,"license":{"key":"apache-2.0","name":"Apache License 2.0","spdx_id":"Apache-2.0","url":"https://api.github.com/licenses/apache-2.0","node_id":"MDc6TGljZW5zZTI="},"forks":262,"open_issues":29,"watchers":1677,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218"},"html":{"href":"https://github.com/Jigsaw-Code/outline-client/pull/218"},"issue":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/218"},"comments":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/issues/218/comments"},"review_comments":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218/comments"},"review_comment":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/pulls/218/commits"},"statuses":{"href":"https://api.github.com/repos/Jigsaw-Code/outline-client/statuses/3153005c9152408772bd1ef03ae65acaf60f7111"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"alalamav"}}