{"action":"created","comment":{"url":"https://api.github.com/repos/KDE/craft/pulls/comments/219739156","pull_request_review_id":157984275,"id":219739156,"node_id":"MDI0OlB1bGxSZXF1ZXN0UmV2aWV3Q29tbWVudDIxOTczOTE1Ng==","diff_hunk":"@@ -256,6 +262,50 @@ def copyFiles(self, srcDir, destDir, dontStrip) -> bool:\n                     utils.sign([entry_target])\n         return True\n \n+    def symbolsDir(self):\n+        \"\"\"return absolute path to the symbol directory in imageDir\n+        \"\"\"\n+        return os.path.join(self.imageDir(), 'symbols')\n+\n+    def internalPostInstall(self):\n+        if not super().internalPostInstall():\n+            return False\n+\n+        if self._doDumpSymbols:\n+            for entry in self.traverse(self.imageDir(), self.whitelisted, self.blacklisted):\n+                if self.isBinary(entry):\n+                    self._dumpSymbols(entry)\n+\n+        return True\n+\n+    # Loosely based on https://chromium.googlesource.com/chromium/chromium/+/34599b0bf7a14ab21a04483c46ecd9b5eaf86704/components/breakpad/tools/generate_breakpad_symbols.py#92\n+    def _dumpSymbols(self, binaryFile):\n+        CraftCore.log.debug('%s: dump symbols' % binaryFile)\n+\n+        with io.BytesIO() as out:\n+            utils.system(['dump_syms', binaryFile], stdout=out)\n+\n+            outBytes = out.getvalue()\n+            firstLine = str(outBytes.splitlines()[0], 'utf-8')\n+            CraftCore.log.debug('Module line: %s' % firstLine)\n+            regex = \"^MODULE [^ ]+ [^ ]+ ([0-9aA-fF]+) (.*)\"\n+            CraftCore.log.debug('regex: %s' % regex)\n+            moduleLine = re.match(regex, firstLine)\n+            CraftCore.log.debug('regex: %s' % moduleLine)\n+            outputPath = os.path.join(self.symbolsDir(), moduleLine.group(2),\n+                                 moduleLine.group(1))\n+\n+            if (not os.path.exists(outputPath)):","path":"bin/Packager/CollectionPackagerBase.py","position":57,"original_position":57,"commit_id":"0cdadc9bae068199e63411270016a8b83436f494","original_commit_id":"0cdadc9bae068199e63411270016a8b83436f494","user":{"login":"TheOneRing","id":200626,"node_id":"MDQ6VXNlcjIwMDYyNg==","avatar_url":"https://avatars3.githubusercontent.com/u/200626?v=4","gravatar_id":"","url":"https://api.github.com/users/TheOneRing","html_url":"https://github.com/TheOneRing","followers_url":"https://api.github.com/users/TheOneRing/followers","following_url":"https://api.github.com/users/TheOneRing/following{/other_user}","gists_url":"https://api.github.com/users/TheOneRing/gists{/gist_id}","starred_url":"https://api.github.com/users/TheOneRing/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/TheOneRing/subscriptions","organizations_url":"https://api.github.com/users/TheOneRing/orgs","repos_url":"https://api.github.com/users/TheOneRing/repos","events_url":"https://api.github.com/users/TheOneRing/events{/privacy}","received_events_url":"https://api.github.com/users/TheOneRing/received_events","type":"User","site_admin":false},"body":"just use utils.createDirectory without a condition","created_at":"2018-09-24T06:46:13Z","updated_at":"2018-09-24T06:54:41Z","html_url":"https://github.com/KDE/craft/pull/8#discussion_r219739156","pull_request_url":"https://api.github.com/repos/KDE/craft/pulls/8","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/KDE/craft/pulls/comments/219739156"},"html":{"href":"https://github.com/KDE/craft/pull/8#discussion_r219739156"},"pull_request":{"href":"https://api.github.com/repos/KDE/craft/pulls/8"}}},"pull_request":{"url":"https://api.github.com/repos/KDE/craft/pulls/8","id":217453445,"node_id":"MDExOlB1bGxSZXF1ZXN0MjE3NDUzNDQ1","html_url":"https://github.com/KDE/craft/pull/8","diff_url":"https://github.com/KDE/craft/pull/8.diff","patch_url":"https://github.com/KDE/craft/pull/8.patch","issue_url":"https://api.github.com/repos/KDE/craft/issues/8","number":8,"state":"open","locked":false,"title":"Add breakpad (symbol dumping) support","user":{"login":"dschmidt","id":448487,"node_id":"MDQ6VXNlcjQ0ODQ4Nw==","avatar_url":"https://avatars2.githubusercontent.com/u/448487?v=4","gravatar_id":"","url":"https://api.github.com/users/dschmidt","html_url":"https://github.com/dschmidt","followers_url":"https://api.github.com/users/dschmidt/followers","following_url":"https://api.github.com/users/dschmidt/following{/other_user}","gists_url":"https://api.github.com/users/dschmidt/gists{/gist_id}","starred_url":"https://api.github.com/users/dschmidt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dschmidt/subscriptions","organizations_url":"https://api.github.com/users/dschmidt/orgs","repos_url":"https://api.github.com/users/dschmidt/repos","events_url":"https://api.github.com/users/dschmidt/events{/privacy}","received_events_url":"https://api.github.com/users/dschmidt/received_events","type":"User","site_admin":false},"body":"","created_at":"2018-09-22T11:43:21Z","updated_at":"2018-09-24T06:54:41Z","closed_at":null,"merged_at":null,"merge_commit_sha":"0ffe7635356f0469f16e897ab4f4733d7f6e38bd","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"commits_url":"https://api.github.com/repos/KDE/craft/pulls/8/commits","review_comments_url":"https://api.github.com/repos/KDE/craft/pulls/8/comments","review_comment_url":"https://api.github.com/repos/KDE/craft/pulls/comments{/number}","comments_url":"https://api.github.com/repos/KDE/craft/issues/8/comments","statuses_url":"https://api.github.com/repos/KDE/craft/statuses/0cdadc9bae068199e63411270016a8b83436f494","head":{"label":"dschmidt:breakpad","ref":"breakpad","sha":"0cdadc9bae068199e63411270016a8b83436f494","user":{"login":"dschmidt","id":448487,"node_id":"MDQ6VXNlcjQ0ODQ4Nw==","avatar_url":"https://avatars2.githubusercontent.com/u/448487?v=4","gravatar_id":"","url":"https://api.github.com/users/dschmidt","html_url":"https://github.com/dschmidt","followers_url":"https://api.github.com/users/dschmidt/followers","following_url":"https://api.github.com/users/dschmidt/following{/other_user}","gists_url":"https://api.github.com/users/dschmidt/gists{/gist_id}","starred_url":"https://api.github.com/users/dschmidt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dschmidt/subscriptions","organizations_url":"https://api.github.com/users/dschmidt/orgs","repos_url":"https://api.github.com/users/dschmidt/repos","events_url":"https://api.github.com/users/dschmidt/events{/privacy}","received_events_url":"https://api.github.com/users/dschmidt/received_events","type":"User","site_admin":false},"repo":{"id":136176145,"node_id":"MDEwOlJlcG9zaXRvcnkxMzYxNzYxNDU=","name":"craft","full_name":"dschmidt/craft","private":false,"owner":{"login":"dschmidt","id":448487,"node_id":"MDQ6VXNlcjQ0ODQ4Nw==","avatar_url":"https://avatars2.githubusercontent.com/u/448487?v=4","gravatar_id":"","url":"https://api.github.com/users/dschmidt","html_url":"https://github.com/dschmidt","followers_url":"https://api.github.com/users/dschmidt/followers","following_url":"https://api.github.com/users/dschmidt/following{/other_user}","gists_url":"https://api.github.com/users/dschmidt/gists{/gist_id}","starred_url":"https://api.github.com/users/dschmidt/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/dschmidt/subscriptions","organizations_url":"https://api.github.com/users/dschmidt/orgs","repos_url":"https://api.github.com/users/dschmidt/repos","events_url":"https://api.github.com/users/dschmidt/events{/privacy}","received_events_url":"https://api.github.com/users/dschmidt/received_events","type":"User","site_admin":false},"html_url":"https://github.com/dschmidt/craft","description":"Open source meta build system and package manager.","fork":true,"url":"https://api.github.com/repos/dschmidt/craft","forks_url":"https://api.github.com/repos/dschmidt/craft/forks","keys_url":"https://api.github.com/repos/dschmidt/craft/keys{/key_id}","collaborators_url":"https://api.github.com/repos/dschmidt/craft/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/dschmidt/craft/teams","hooks_url":"https://api.github.com/repos/dschmidt/craft/hooks","issue_events_url":"https://api.github.com/repos/dschmidt/craft/issues/events{/number}","events_url":"https://api.github.com/repos/dschmidt/craft/events","assignees_url":"https://api.github.com/repos/dschmidt/craft/assignees{/user}","branches_url":"https://api.github.com/repos/dschmidt/craft/branches{/branch}","tags_url":"https://api.github.com/repos/dschmidt/craft/tags","blobs_url":"https://api.github.com/repos/dschmidt/craft/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/dschmidt/craft/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/dschmidt/craft/git/refs{/sha}","trees_url":"https://api.github.com/repos/dschmidt/craft/git/trees{/sha}","statuses_url":"https://api.github.com/repos/dschmidt/craft/statuses/{sha}","languages_url":"https://api.github.com/repos/dschmidt/craft/languages","stargazers_url":"https://api.github.com/repos/dschmidt/craft/stargazers","contributors_url":"https://api.github.com/repos/dschmidt/craft/contributors","subscribers_url":"https://api.github.com/repos/dschmidt/craft/subscribers","subscription_url":"https://api.github.com/repos/dschmidt/craft/subscription","commits_url":"https://api.github.com/repos/dschmidt/craft/commits{/sha}","git_commits_url":"https://api.github.com/repos/dschmidt/craft/git/commits{/sha}","comments_url":"https://api.github.com/repos/dschmidt/craft/comments{/number}","issue_comment_url":"https://api.github.com/repos/dschmidt/craft/issues/comments{/number}","contents_url":"https://api.github.com/repos/dschmidt/craft/contents/{+path}","compare_url":"https://api.github.com/repos/dschmidt/craft/compare/{base}...{head}","merges_url":"https://api.github.com/repos/dschmidt/craft/merges","archive_url":"https://api.github.com/repos/dschmidt/craft/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/dschmidt/craft/downloads","issues_url":"https://api.github.com/repos/dschmidt/craft/issues{/number}","pulls_url":"https://api.github.com/repos/dschmidt/craft/pulls{/number}","milestones_url":"https://api.github.com/repos/dschmidt/craft/milestones{/number}","notifications_url":"https://api.github.com/repos/dschmidt/craft/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/dschmidt/craft/labels{/name}","releases_url":"https://api.github.com/repos/dschmidt/craft/releases{/id}","deployments_url":"https://api.github.com/repos/dschmidt/craft/deployments","created_at":"2018-06-05T12:45:27Z","updated_at":"2018-06-05T12:45:30Z","pushed_at":"2018-09-22T14:23:48Z","git_url":"git://github.com/dschmidt/craft.git","ssh_url":"git@github.com:dschmidt/craft.git","clone_url":"https://github.com/dschmidt/craft.git","svn_url":"https://github.com/dschmidt/craft","homepage":null,"size":34474,"stargazers_count":0,"watchers_count":0,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":0,"mirror_url":null,"archived":false,"open_issues_count":0,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":0,"open_issues":0,"watchers":0,"default_branch":"master"}},"base":{"label":"KDE:master","ref":"master","sha":"2056fabb6fc0c06de511ab7497aa4c04f1fc1ade","user":{"login":"KDE","id":14312869,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MzEyODY5","avatar_url":"https://avatars3.githubusercontent.com/u/14312869?v=4","gravatar_id":"","url":"https://api.github.com/users/KDE","html_url":"https://github.com/KDE","followers_url":"https://api.github.com/users/KDE/followers","following_url":"https://api.github.com/users/KDE/following{/other_user}","gists_url":"https://api.github.com/users/KDE/gists{/gist_id}","starred_url":"https://api.github.com/users/KDE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KDE/subscriptions","organizations_url":"https://api.github.com/users/KDE/orgs","repos_url":"https://api.github.com/users/KDE/repos","events_url":"https://api.github.com/users/KDE/events{/privacy}","received_events_url":"https://api.github.com/users/KDE/received_events","type":"Organization","site_admin":false},"repo":{"id":74263482,"node_id":"MDEwOlJlcG9zaXRvcnk3NDI2MzQ4Mg==","name":"craft","full_name":"KDE/craft","private":false,"owner":{"login":"KDE","id":14312869,"node_id":"MDEyOk9yZ2FuaXphdGlvbjE0MzEyODY5","avatar_url":"https://avatars3.githubusercontent.com/u/14312869?v=4","gravatar_id":"","url":"https://api.github.com/users/KDE","html_url":"https://github.com/KDE","followers_url":"https://api.github.com/users/KDE/followers","following_url":"https://api.github.com/users/KDE/following{/other_user}","gists_url":"https://api.github.com/users/KDE/gists{/gist_id}","starred_url":"https://api.github.com/users/KDE/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/KDE/subscriptions","organizations_url":"https://api.github.com/users/KDE/orgs","repos_url":"https://api.github.com/users/KDE/repos","events_url":"https://api.github.com/users/KDE/events{/privacy}","received_events_url":"https://api.github.com/users/KDE/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/KDE/craft","description":"Open source meta build system and package manager.","fork":false,"url":"https://api.github.com/repos/KDE/craft","forks_url":"https://api.github.com/repos/KDE/craft/forks","keys_url":"https://api.github.com/repos/KDE/craft/keys{/key_id}","collaborators_url":"https://api.github.com/repos/KDE/craft/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/KDE/craft/teams","hooks_url":"https://api.github.com/repos/KDE/craft/hooks","issue_events_url":"https://api.github.com/repos/KDE/craft/issues/events{/number}","events_url":"https://api.github.com/repos/KDE/craft/events","assignees_url":"https://api.github.com/repos/KDE/craft/assignees{/user}","branches_url":"https://api.github.com/repos/KDE/craft/branches{/branch}","tags_url":"https://api.github.com/repos/KDE/craft/tags","blobs_url":"https://api.github.com/repos/KDE/craft/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/KDE/craft/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/KDE/craft/git/refs{/sha}","trees_url":"https://api.github.com/repos/KDE/craft/git/trees{/sha}","statuses_url":"https://api.github.com/repos/KDE/craft/statuses/{sha}","languages_url":"https://api.github.com/repos/KDE/craft/languages","stargazers_url":"https://api.github.com/repos/KDE/craft/stargazers","contributors_url":"https://api.github.com/repos/KDE/craft/contributors","subscribers_url":"https://api.github.com/repos/KDE/craft/subscribers","subscription_url":"https://api.github.com/repos/KDE/craft/subscription","commits_url":"https://api.github.com/repos/KDE/craft/commits{/sha}","git_commits_url":"https://api.github.com/repos/KDE/craft/git/commits{/sha}","comments_url":"https://api.github.com/repos/KDE/craft/comments{/number}","issue_comment_url":"https://api.github.com/repos/KDE/craft/issues/comments{/number}","contents_url":"https://api.github.com/repos/KDE/craft/contents/{+path}","compare_url":"https://api.github.com/repos/KDE/craft/compare/{base}...{head}","merges_url":"https://api.github.com/repos/KDE/craft/merges","archive_url":"https://api.github.com/repos/KDE/craft/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/KDE/craft/downloads","issues_url":"https://api.github.com/repos/KDE/craft/issues{/number}","pulls_url":"https://api.github.com/repos/KDE/craft/pulls{/number}","milestones_url":"https://api.github.com/repos/KDE/craft/milestones{/number}","notifications_url":"https://api.github.com/repos/KDE/craft/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/KDE/craft/labels{/name}","releases_url":"https://api.github.com/repos/KDE/craft/releases{/id}","deployments_url":"https://api.github.com/repos/KDE/craft/deployments","created_at":"2016-11-20T09:11:08Z","updated_at":"2018-09-21T22:21:58Z","pushed_at":"2018-09-22T14:23:49Z","git_url":"git://github.com/KDE/craft.git","ssh_url":"git@github.com:KDE/craft.git","clone_url":"https://github.com/KDE/craft.git","svn_url":"https://github.com/KDE/craft","homepage":null,"size":34485,"stargazers_count":16,"watchers_count":16,"language":"Python","has_issues":false,"has_projects":true,"has_downloads":false,"has_wiki":false,"has_pages":false,"forks_count":9,"mirror_url":null,"archived":false,"open_issues_count":2,"license":{"key":"other","name":"Other","spdx_id":null,"url":null,"node_id":"MDc6TGljZW5zZTA="},"forks":9,"open_issues":2,"watchers":16,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/KDE/craft/pulls/8"},"html":{"href":"https://github.com/KDE/craft/pull/8"},"issue":{"href":"https://api.github.com/repos/KDE/craft/issues/8"},"comments":{"href":"https://api.github.com/repos/KDE/craft/issues/8/comments"},"review_comments":{"href":"https://api.github.com/repos/KDE/craft/pulls/8/comments"},"review_comment":{"href":"https://api.github.com/repos/KDE/craft/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/KDE/craft/pulls/8/commits"},"statuses":{"href":"https://api.github.com/repos/KDE/craft/statuses/0cdadc9bae068199e63411270016a8b83436f494"}},"author_association":"CONTRIBUTOR"}}
{"actor":{"display_login":"TheOneRing"}}