{"action":"created","comment":{"url":"https://api.github.com/repos/domokit/sky_engine/pulls/comments/36144766","id":36144766,"diff_hunk":"@@ -275,25 +291,73 @@ class StopTracing(object):\n \n \n class SkyShellRunner(object):\n+    def _update_paths(self):\n+        global ADB_PATH\n+        if 'ANDROID_HOME' in os.environ:\n+            android_home_dir = os.environ['ANDROID_HOME']\n+            ADB_PATH = os.path.join(android_home_dir, 'sdk/platform-tools/adb')\n+\n     def _check_for_adb(self):\n         try:\n-            subprocess.check_output([ADB_PATH, 'devices'])\n+            adb_version = subprocess.check_output([ADB_PATH, 'version'])\n+            # Sample output: \"Android Debug Bridge version 1.0.31\"\n+            version_fields = adb_version.rstrip().split('.')\n+            # If the string doesn't match the expected format, then skip the\n+            # version check.\n+            if len(version_fields) == 3 and version_fields[-1].isdigit():\n+                minor_version = int(version_fields[-1])\n+                if minor_version < 32:","path":"sky/packages/sky/lib/sky_tool","position":151,"original_position":151,"commit_id":"f0ed5c5bd5c0011f0b742b1d9c31bab1f15a9458","original_commit_id":"f0ed5c5bd5c0011f0b742b1d9c31bab1f15a9458","user":{"login":"abarth","id":112007,"avatar_url":"https://avatars.githubusercontent.com/u/112007?v=3","gravatar_id":"","url":"https://api.github.com/users/abarth","html_url":"https://github.com/abarth","followers_url":"https://api.github.com/users/abarth/followers","following_url":"https://api.github.com/users/abarth/following{/other_user}","gists_url":"https://api.github.com/users/abarth/gists{/gist_id}","starred_url":"https://api.github.com/users/abarth/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/abarth/subscriptions","organizations_url":"https://api.github.com/users/abarth/orgs","repos_url":"https://api.github.com/users/abarth/repos","events_url":"https://api.github.com/users/abarth/events{/privacy}","received_events_url":"https://api.github.com/users/abarth/received_events","type":"User","site_admin":false},"body":"Please check the other two version numbers.  Otherwise we'll think that 1.1.2 is too old.","created_at":"2015-08-03T23:51:36Z","updated_at":"2015-08-03T23:51:36Z","html_url":"https://github.com/domokit/sky_engine/pull/432#discussion_r36144766","pull_request_url":"https://api.github.com/repos/domokit/sky_engine/pulls/432","_links":{"self":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/comments/36144766"},"html":{"href":"https://github.com/domokit/sky_engine/pull/432#discussion_r36144766"},"pull_request":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/432"}}},"pull_request":{"url":"https://api.github.com/repos/domokit/sky_engine/pulls/432","id":41513006,"html_url":"https://github.com/domokit/sky_engine/pull/432","diff_url":"https://github.com/domokit/sky_engine/pull/432.diff","patch_url":"https://github.com/domokit/sky_engine/pull/432.patch","issue_url":"https://api.github.com/repos/domokit/sky_engine/issues/432","number":432,"state":"open","locked":false,"title":"Make sky_tool much more user-friendly.","user":{"login":"jimbeveridge","id":7953123,"avatar_url":"https://avatars.githubusercontent.com/u/7953123?v=3","gravatar_id":"","url":"https://api.github.com/users/jimbeveridge","html_url":"https://github.com/jimbeveridge","followers_url":"https://api.github.com/users/jimbeveridge/followers","following_url":"https://api.github.com/users/jimbeveridge/following{/other_user}","gists_url":"https://api.github.com/users/jimbeveridge/gists{/gist_id}","starred_url":"https://api.github.com/users/jimbeveridge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jimbeveridge/subscriptions","organizations_url":"https://api.github.com/users/jimbeveridge/orgs","repos_url":"https://api.github.com/users/jimbeveridge/repos","events_url":"https://api.github.com/users/jimbeveridge/events{/privacy}","received_events_url":"https://api.github.com/users/jimbeveridge/received_events","type":"User","site_admin":false},"body":"Adds checks for common configuration problems.\r\n\r\nLooks for failures like adb missing, adb too old, device SDK too old, and bad script path,.\r\nAdds support for ANDROID_HOME to find ADB.\r\nRemoves stack trace for adb issues.\r\n\r\nB=Fixes #187","created_at":"2015-08-03T21:41:17Z","updated_at":"2015-08-03T23:51:36Z","closed_at":null,"merged_at":null,"merge_commit_sha":"f3a7c434c73ee6538a400d80e6debe869214b369","assignee":null,"milestone":null,"commits_url":"https://api.github.com/repos/domokit/sky_engine/pulls/432/commits","review_comments_url":"https://api.github.com/repos/domokit/sky_engine/pulls/432/comments","review_comment_url":"https://api.github.com/repos/domokit/sky_engine/pulls/comments{/number}","comments_url":"https://api.github.com/repos/domokit/sky_engine/issues/432/comments","statuses_url":"https://api.github.com/repos/domokit/sky_engine/statuses/f0ed5c5bd5c0011f0b742b1d9c31bab1f15a9458","head":{"label":"jimbeveridge:sky_tool","ref":"sky_tool","sha":"f0ed5c5bd5c0011f0b742b1d9c31bab1f15a9458","user":{"login":"jimbeveridge","id":7953123,"avatar_url":"https://avatars.githubusercontent.com/u/7953123?v=3","gravatar_id":"","url":"https://api.github.com/users/jimbeveridge","html_url":"https://github.com/jimbeveridge","followers_url":"https://api.github.com/users/jimbeveridge/followers","following_url":"https://api.github.com/users/jimbeveridge/following{/other_user}","gists_url":"https://api.github.com/users/jimbeveridge/gists{/gist_id}","starred_url":"https://api.github.com/users/jimbeveridge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jimbeveridge/subscriptions","organizations_url":"https://api.github.com/users/jimbeveridge/orgs","repos_url":"https://api.github.com/users/jimbeveridge/repos","events_url":"https://api.github.com/users/jimbeveridge/events{/privacy}","received_events_url":"https://api.github.com/users/jimbeveridge/received_events","type":"User","site_admin":false},"repo":{"id":39976739,"name":"sky_engine","full_name":"jimbeveridge/sky_engine","owner":{"login":"jimbeveridge","id":7953123,"avatar_url":"https://avatars.githubusercontent.com/u/7953123?v=3","gravatar_id":"","url":"https://api.github.com/users/jimbeveridge","html_url":"https://github.com/jimbeveridge","followers_url":"https://api.github.com/users/jimbeveridge/followers","following_url":"https://api.github.com/users/jimbeveridge/following{/other_user}","gists_url":"https://api.github.com/users/jimbeveridge/gists{/gist_id}","starred_url":"https://api.github.com/users/jimbeveridge/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jimbeveridge/subscriptions","organizations_url":"https://api.github.com/users/jimbeveridge/orgs","repos_url":"https://api.github.com/users/jimbeveridge/repos","events_url":"https://api.github.com/users/jimbeveridge/events{/privacy}","received_events_url":"https://api.github.com/users/jimbeveridge/received_events","type":"User","site_admin":false},"private":false,"html_url":"https://github.com/jimbeveridge/sky_engine","description":"The Sky engine","fork":true,"url":"https://api.github.com/repos/jimbeveridge/sky_engine","forks_url":"https://api.github.com/repos/jimbeveridge/sky_engine/forks","keys_url":"https://api.github.com/repos/jimbeveridge/sky_engine/keys{/key_id}","collaborators_url":"https://api.github.com/repos/jimbeveridge/sky_engine/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/jimbeveridge/sky_engine/teams","hooks_url":"https://api.github.com/repos/jimbeveridge/sky_engine/hooks","issue_events_url":"https://api.github.com/repos/jimbeveridge/sky_engine/issues/events{/number}","events_url":"https://api.github.com/repos/jimbeveridge/sky_engine/events","assignees_url":"https://api.github.com/repos/jimbeveridge/sky_engine/assignees{/user}","branches_url":"https://api.github.com/repos/jimbeveridge/sky_engine/branches{/branch}","tags_url":"https://api.github.com/repos/jimbeveridge/sky_engine/tags","blobs_url":"https://api.github.com/repos/jimbeveridge/sky_engine/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/jimbeveridge/sky_engine/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/jimbeveridge/sky_engine/git/refs{/sha}","trees_url":"https://api.github.com/repos/jimbeveridge/sky_engine/git/trees{/sha}","statuses_url":"https://api.github.com/repos/jimbeveridge/sky_engine/statuses/{sha}","languages_url":"https://api.github.com/repos/jimbeveridge/sky_engine/languages","stargazers_url":"https://api.github.com/repos/jimbeveridge/sky_engine/stargazers","contributors_url":"https://api.github.com/repos/jimbeveridge/sky_engine/contributors","subscribers_url":"https://api.github.com/repos/jimbeveridge/sky_engine/subscribers","subscription_url":"https://api.github.com/repos/jimbeveridge/sky_engine/subscription","commits_url":"https://api.github.com/repos/jimbeveridge/sky_engine/commits{/sha}","git_commits_url":"https://api.github.com/repos/jimbeveridge/sky_engine/git/commits{/sha}","comments_url":"https://api.github.com/repos/jimbeveridge/sky_engine/comments{/number}","issue_comment_url":"https://api.github.com/repos/jimbeveridge/sky_engine/issues/comments{/number}","contents_url":"https://api.github.com/repos/jimbeveridge/sky_engine/contents/{+path}","compare_url":"https://api.github.com/repos/jimbeveridge/sky_engine/compare/{base}...{head}","merges_url":"https://api.github.com/repos/jimbeveridge/sky_engine/merges","archive_url":"https://api.github.com/repos/jimbeveridge/sky_engine/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/jimbeveridge/sky_engine/downloads","issues_url":"https://api.github.com/repos/jimbeveridge/sky_engine/issues{/number}","pulls_url":"https://api.github.com/repos/jimbeveridge/sky_engine/pulls{/number}","milestones_url":"https://api.github.com/repos/jimbeveridge/sky_engine/milestones{/number}","notifications_url":"https://api.github.com/repos/jimbeveridge/sky_engine/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/jimbeveridge/sky_engine/labels{/name}","releases_url":"https://api.github.com/repos/jimbeveridge/sky_engine/releases{/id}","created_at":"2015-07-30T23:25:58Z","updated_at":"2015-07-30T23:26:17Z","pushed_at":"2015-08-03T21:35:31Z","git_url":"git://github.com/jimbeveridge/sky_engine.git","ssh_url":"git@github.com:jimbeveridge/sky_engine.git","clone_url":"https://github.com/jimbeveridge/sky_engine.git","svn_url":"https://github.com/jimbeveridge/sky_engine","homepage":null,"size":71520,"stargazers_count":0,"watchers_count":0,"language":"C++","has_issues":false,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":0,"mirror_url":null,"open_issues_count":0,"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"domokit:master","ref":"master","sha":"ffc33bbd68800bb622d0b0fe3e9a3a8e2f3f569c","user":{"login":"domokit","id":8664152,"avatar_url":"https://avatars.githubusercontent.com/u/8664152?v=3","gravatar_id":"","url":"https://api.github.com/users/domokit","html_url":"https://github.com/domokit","followers_url":"https://api.github.com/users/domokit/followers","following_url":"https://api.github.com/users/domokit/following{/other_user}","gists_url":"https://api.github.com/users/domokit/gists{/gist_id}","starred_url":"https://api.github.com/users/domokit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/domokit/subscriptions","organizations_url":"https://api.github.com/users/domokit/orgs","repos_url":"https://api.github.com/users/domokit/repos","events_url":"https://api.github.com/users/domokit/events{/privacy}","received_events_url":"https://api.github.com/users/domokit/received_events","type":"Organization","site_admin":false},"repo":{"id":39211337,"name":"sky_engine","full_name":"domokit/sky_engine","owner":{"login":"domokit","id":8664152,"avatar_url":"https://avatars.githubusercontent.com/u/8664152?v=3","gravatar_id":"","url":"https://api.github.com/users/domokit","html_url":"https://github.com/domokit","followers_url":"https://api.github.com/users/domokit/followers","following_url":"https://api.github.com/users/domokit/following{/other_user}","gists_url":"https://api.github.com/users/domokit/gists{/gist_id}","starred_url":"https://api.github.com/users/domokit/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/domokit/subscriptions","organizations_url":"https://api.github.com/users/domokit/orgs","repos_url":"https://api.github.com/users/domokit/repos","events_url":"https://api.github.com/users/domokit/events{/privacy}","received_events_url":"https://api.github.com/users/domokit/received_events","type":"Organization","site_admin":false},"private":false,"html_url":"https://github.com/domokit/sky_engine","description":"The Sky engine","fork":false,"url":"https://api.github.com/repos/domokit/sky_engine","forks_url":"https://api.github.com/repos/domokit/sky_engine/forks","keys_url":"https://api.github.com/repos/domokit/sky_engine/keys{/key_id}","collaborators_url":"https://api.github.com/repos/domokit/sky_engine/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/domokit/sky_engine/teams","hooks_url":"https://api.github.com/repos/domokit/sky_engine/hooks","issue_events_url":"https://api.github.com/repos/domokit/sky_engine/issues/events{/number}","events_url":"https://api.github.com/repos/domokit/sky_engine/events","assignees_url":"https://api.github.com/repos/domokit/sky_engine/assignees{/user}","branches_url":"https://api.github.com/repos/domokit/sky_engine/branches{/branch}","tags_url":"https://api.github.com/repos/domokit/sky_engine/tags","blobs_url":"https://api.github.com/repos/domokit/sky_engine/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/domokit/sky_engine/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/domokit/sky_engine/git/refs{/sha}","trees_url":"https://api.github.com/repos/domokit/sky_engine/git/trees{/sha}","statuses_url":"https://api.github.com/repos/domokit/sky_engine/statuses/{sha}","languages_url":"https://api.github.com/repos/domokit/sky_engine/languages","stargazers_url":"https://api.github.com/repos/domokit/sky_engine/stargazers","contributors_url":"https://api.github.com/repos/domokit/sky_engine/contributors","subscribers_url":"https://api.github.com/repos/domokit/sky_engine/subscribers","subscription_url":"https://api.github.com/repos/domokit/sky_engine/subscription","commits_url":"https://api.github.com/repos/domokit/sky_engine/commits{/sha}","git_commits_url":"https://api.github.com/repos/domokit/sky_engine/git/commits{/sha}","comments_url":"https://api.github.com/repos/domokit/sky_engine/comments{/number}","issue_comment_url":"https://api.github.com/repos/domokit/sky_engine/issues/comments{/number}","contents_url":"https://api.github.com/repos/domokit/sky_engine/contents/{+path}","compare_url":"https://api.github.com/repos/domokit/sky_engine/compare/{base}...{head}","merges_url":"https://api.github.com/repos/domokit/sky_engine/merges","archive_url":"https://api.github.com/repos/domokit/sky_engine/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/domokit/sky_engine/downloads","issues_url":"https://api.github.com/repos/domokit/sky_engine/issues{/number}","pulls_url":"https://api.github.com/repos/domokit/sky_engine/pulls{/number}","milestones_url":"https://api.github.com/repos/domokit/sky_engine/milestones{/number}","notifications_url":"https://api.github.com/repos/domokit/sky_engine/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/domokit/sky_engine/labels{/name}","releases_url":"https://api.github.com/repos/domokit/sky_engine/releases{/id}","created_at":"2015-07-16T17:39:56Z","updated_at":"2015-08-03T23:40:51Z","pushed_at":"2015-08-03T23:42:35Z","git_url":"git://github.com/domokit/sky_engine.git","ssh_url":"git@github.com:domokit/sky_engine.git","clone_url":"https://github.com/domokit/sky_engine.git","svn_url":"https://github.com/domokit/sky_engine","homepage":null,"size":74496,"stargazers_count":95,"watchers_count":95,"language":"C++","has_issues":true,"has_downloads":true,"has_wiki":true,"has_pages":false,"forks_count":30,"mirror_url":null,"open_issues_count":116,"forks":30,"open_issues":116,"watchers":95,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/432"},"html":{"href":"https://github.com/domokit/sky_engine/pull/432"},"issue":{"href":"https://api.github.com/repos/domokit/sky_engine/issues/432"},"comments":{"href":"https://api.github.com/repos/domokit/sky_engine/issues/432/comments"},"review_comments":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/432/comments"},"review_comment":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/domokit/sky_engine/pulls/432/commits"},"statuses":{"href":"https://api.github.com/repos/domokit/sky_engine/statuses/f0ed5c5bd5c0011f0b742b1d9c31bab1f15a9458"}}}}