Status for Dolphin Central

Recent events

2018-02-23T20:20:44.966078	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'gwicks', 'what': 'degasus: How important would you say it is that I go through and optimize the joystick logic, in terms of merge-ability? (Sorry if this is a dupe message, my connection wonked out)', 'source': 'ircclient'}
2018-02-23T18:05:26.708080	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': 'create an IRC bot - JMCBot, it automatically identifies Cool PRs using #MachineLearning and pokes for reviews daily', 'source': 'ircclient'}
2018-02-23T18:01:09.515944	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'v'}, 'who': 'JMC47', 'what': "Helios747: plz don't.  That's my only use", 'source': 'ircclient'}
2018-02-23T17:40:03.330990	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': 'hey google, how do I cronjob a message to IRC to bug degasus to review abstract framebuffers?', 'source': 'ircclient'}
2018-02-23T17:31:20.956731	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'degasus', 'what': 'just bug me daily ;)', 'source': 'ircclient'}
2018-02-23T17:29:40.144838	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/12/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9311, 'builderid': 12, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9311, 'builderid': 12, 'buildid': 6966, 'masterid': 1, 'complete': True, 'workerid': 11, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['delroth-nuc', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-intel', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['delroth-nuc', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/data/buildslave/buildslave/fifoci-ogl-lin-intel', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-intel', 'builderid': 12}, 'complete_at': 1519406980, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:27:00.824004	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/36/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9316, 'builderid': 36, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9316, 'builderid': 36, 'buildid': 6964, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-mesa', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-ogl-lin-mesa', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-mesa', 'builderid': 36}, 'complete_at': 1519406821, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:26:23.951531	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/16/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9312, 'builderid': 16, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9312, 'builderid': 16, 'buildid': 6965, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-sw-lin-mesa', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-sw-lin-mesa', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-sw-lin-mesa', 'builderid': 16}, 'complete_at': 1519406784, 'started_at': 1519406370, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:23:31.951714	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/25/builds/112', 'results': 0, 'buildrequest': {'claimed_at': 1519406511, 'waited_for': False, 'claimed': True, 'buildrequestid': 9319, 'builderid': 25, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406511, 'buildsetid': 2609, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9319, 'builderid': 25, 'buildid': 6968, 'masterid': 1, 'complete': True, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2609, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406511, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [112, 'Build'], 'scheduler': ['win64-debug', 'Scheduler'], 'buildername': ['debug-win-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'build_url': ['https://dl.dolphin-emu.org/builds/dolphin-master-5.0-6372-dbg-x64.7z', 'SetProperty'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['C:\\buildbot\\debug-win-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'debug-win-x64', 'builderid': 25}, 'complete_at': 1519406612, 'started_at': 1519406512, 'number': 112}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:51.611635	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/25/builds/112', 'results': None, 'buildrequest': {'claimed_at': 1519406511, 'waited_for': False, 'claimed': True, 'buildrequestid': 9319, 'builderid': 25, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406511, 'buildsetid': 2609, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9319, 'builderid': 25, 'buildid': 6968, 'masterid': 1, 'complete': False, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2609, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406511, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [112, 'Build'], 'scheduler': ['win64-debug', 'Scheduler'], 'buildername': ['debug-win-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'debug-win-x64', 'builderid': 25}, 'complete_at': None, 'started_at': 1519406512, 'number': 112}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:51.493499	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/15/builds/140', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9306, 'builderid': 15, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2601, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9306, 'builderid': 15, 'buildid': 6959, 'masterid': 1, 'complete': True, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2601, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'win64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [140, 'Build'], 'scheduler': ['win64-release', 'Scheduler'], 'buildername': ['release-win-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'build_url': ['https://dl.dolphin-emu.org/builds/dolphin-master-5.0-6372-x64.7z', 'SetProperty'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['C:\\buildbot\\release-win-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-win-x64', 'builderid': 15}, 'complete_at': 1519406511, 'started_at': 1519406353, 'number': 140}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:16.009830	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/1/builds/143', 'results': 0, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9317, 'builderid': 1, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406370, 'buildsetid': 2607, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9317, 'builderid': 1, 'buildid': 6967, 'masterid': 1, 'complete': True, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2607, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406370, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [143, 'Build'], 'scheduler': ['android-release', 'Scheduler'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'buildername': ['release-android', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/worker/release-android', 'Worker'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-android', 'builderid': 1}, 'complete_at': 1519406476, 'started_at': 1519406370, 'number': 143}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:20:32.737628	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/11/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9307, 'builderid': 11, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2602, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9307, 'builderid': 11, 'buildid': 6961, 'masterid': 1, 'complete': True, 'workerid': 12, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2602, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'deb64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['debian', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['deb64-release', 'Scheduler'], 'buildername': ['release-deb-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['debian', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/delroth/buildslave/release-deb-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-deb-x64', 'builderid': 11}, 'complete_at': 1519406433, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:20:32.555747	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/31/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9310, 'builderid': 31, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2605, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9310, 'builderid': 31, 'buildid': 6962, 'masterid': 1, 'complete': True, 'workerid': 1, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2605, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'osx-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['osx', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['osx-release', 'Scheduler'], 'buildername': ['release-osx-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['osx', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/Users/osxguest/buildslave/release-osx-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-osx-x64', 'builderid': 31}, 'complete_at': 1519406432, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:20:21.004808	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': "unfortunately I don't know how to review framebuffers than to check for contributing.md violations which I can't spot any at a quick glance. Bug degasus to review it :P", 'source': 'ircclient'}
2018-02-23T17:19:37.563251	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/9/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9308, 'builderid': 9, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2603, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9308, 'builderid': 9, 'buildid': 6963, 'masterid': 1, 'complete': True, 'workerid': 8, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2603, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'freebsd-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['freebsd', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['freebsd-release', 'Scheduler'], 'buildername': ['release-freebsd-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [2, 'WarningCountingShellCommand'], 'slavename': ['freebsd', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/usr/home/buildbot/freebsd/release-freebsd-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-freebsd-x64', 'builderid': 9}, 'complete_at': 1519406378, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.443363	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/1/builds/143', 'results': None, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9317, 'builderid': 1, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406370, 'buildsetid': 2607, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9317, 'builderid': 1, 'buildid': 6967, 'masterid': 1, 'complete': False, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2607, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406370, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [143, 'Build'], 'scheduler': ['android-release', 'Scheduler'], 'buildername': ['release-android', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-android', 'builderid': 1}, 'complete_at': None, 'started_at': 1519406370, 'number': 143}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.241583	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/12/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9311, 'builderid': 12, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9311, 'builderid': 12, 'buildid': 6966, 'masterid': 1, 'complete': False, 'workerid': 11, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['delroth-nuc', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-intel', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['delroth-nuc', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-intel', 'builderid': 12}, 'complete_at': None, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.235236	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/16/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9312, 'builderid': 16, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9312, 'builderid': 16, 'buildid': 6965, 'masterid': 1, 'complete': False, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-sw-lin-mesa', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-sw-lin-mesa', 'builderid': 16}, 'complete_at': None, 'started_at': 1519406370, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.170609	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/36/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9316, 'builderid': 36, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9316, 'builderid': 36, 'buildid': 6964, 'masterid': 1, 'complete': False, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-mesa', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-mesa', 'builderid': 36}, 'complete_at': None, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.126291	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/37/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9309, 'builderid': 37, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2604, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9309, 'builderid': 37, 'buildid': 6960, 'masterid': 1, 'complete': True, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2604, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'ubu64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['ubu64-release', 'Scheduler'], 'buildername': ['release-ubu-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/worker/release-ubu-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-ubu-x64', 'builderid': 37}, 'complete_at': 1519406370, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.999006	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/9/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9308, 'builderid': 9, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2603, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9308, 'builderid': 9, 'buildid': 6963, 'masterid': 1, 'complete': False, 'workerid': 8, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2603, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'freebsd-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['freebsd', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['freebsd-release', 'Scheduler'], 'buildername': ['release-freebsd-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['freebsd', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-freebsd-x64', 'builderid': 9}, 'complete_at': None, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.950480	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/37/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9309, 'builderid': 37, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2604, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9309, 'builderid': 37, 'buildid': 6960, 'masterid': 1, 'complete': False, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2604, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'ubu64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['ubu64-release', 'Scheduler'], 'buildername': ['release-ubu-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-ubu-x64', 'builderid': 37}, 'complete_at': None, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.949563	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/31/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9310, 'builderid': 31, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2605, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9310, 'builderid': 31, 'buildid': 6962, 'masterid': 1, 'complete': False, 'workerid': 1, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2605, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'osx-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['osx', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['osx-release', 'Scheduler'], 'buildername': ['release-osx-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['osx', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-osx-x64', 'builderid': 31}, 'complete_at': None, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.936019	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/11/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9307, 'builderid': 11, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2602, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9307, 'builderid': 11, 'buildid': 6961, 'masterid': 1, 'complete': False, 'workerid': 12, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2602, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'deb64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['debian', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['deb64-release', 'Scheduler'], 'buildername': ['release-deb-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['debian', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-deb-x64', 'builderid': 11}, 'complete_at': None, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}

Recent 'build_status' events

2018-02-23T14:12:57.977333	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/33/builds/433', 'type': 'build_status', 'description': 'Build succeeded on builder pr-osx-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-osx-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T14:12:16.525916	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/33/builds/433', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-osx-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-osx-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:54:42.170608	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/33/builds/432', 'type': 'build_status', 'description': 'Build failed on builder pr-osx-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-osx-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:35:54.101356	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/7/builds/487', 'type': 'build_status', 'description': 'Build succeeded on builder pr-win-dbg-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-win-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:35:03.419480	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/7/builds/487', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-win-dbg-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-win-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:35:02.857869	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/20/builds/490', 'type': 'build_status', 'description': 'Build succeeded on builder pr-win-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-win-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:57.691635	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/21/builds/486', 'type': 'build_status', 'description': 'Build succeeded on builder pr-deb-dbg-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:43.262063	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/8/builds/488', 'type': 'build_status', 'description': 'Build succeeded on builder pr-android', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-android', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:40.179813	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/21/builds/486', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-deb-dbg-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:39.629594	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/6/builds/485', 'type': 'build_status', 'description': 'Build succeeded on builder pr-deb-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:34.014470	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/34/builds/485', 'type': 'build_status', 'description': 'Build succeeded on builder pr-freebsd-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-freebsd-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:33.356165	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/8/builds/488', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-android', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-android', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:32.739524	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/22/builds/485', 'type': 'build_status', 'description': 'Build succeeded on builder lint', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'lint', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:29.811193	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/22/builds/485', 'type': 'build_status', 'description': 'Auto build in progress on builder lint', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'lint', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:29.253856	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/2/builds/486', 'type': 'build_status', 'description': 'Build succeeded on builder pr-ubu-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-ubu-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:24.214069	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/20/builds/490', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-win-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-win-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:23.709575	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/2/builds/486', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-ubu-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-ubu-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:23.173772	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/34/builds/485', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-freebsd-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-freebsd-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:22.664725	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/33/builds/432', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-osx-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-osx-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:22.115551	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/6/builds/485', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-deb-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:34:17.881527	{'pending': False, 'url': '', 'type': 'build_status', 'description': 'Very basic checks passed, handed off to Buildbot.', 'shortrev': 'c8ca1e', 'success': True, 'source': 'prbuilder', 'pr': 6386, 'service': 'default', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:32:32.054194	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/33/builds/431', 'type': 'build_status', 'description': 'Build failed on builder pr-osx-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-osx-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:27:14.162673	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/21/builds/485', 'type': 'build_status', 'description': 'Build succeeded on builder pr-deb-dbg-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:19:10.614932	{'pending': True, 'url': 'https://buildbot.dolphin-emu.org/#builders/21/builds/485', 'type': 'build_status', 'description': 'Auto build in progress on builder pr-deb-dbg-x64', 'shortrev': 'c8ca1e', 'success': False, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-dbg-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}
2018-02-23T13:19:09.999337	{'pending': False, 'url': 'https://buildbot.dolphin-emu.org/#builders/6/builds/484', 'type': 'build_status', 'description': 'Build succeeded on builder pr-deb-x64', 'shortrev': 'c8ca1e', 'success': True, 'source': 'buildbot', 'pr': 6386, 'service': 'pr-deb-x64', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}

Recent 'gh_commit_comment' events

2018-02-15T20:37:09.035267	{'url': 'https://github.com/dolphin-emu/dolphin/commit/efb97598629b96378edd783af82936185d8a99ce#commitcomment-27589931', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': 'efb97598629b96378edd783af82936185d8a99ce', 'author': 'zlice'}
2018-02-15T20:23:37.355694	{'url': 'https://github.com/dolphin-emu/dolphin/commit/efb97598629b96378edd783af82936185d8a99ce#commitcomment-27589658', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': 'efb97598629b96378edd783af82936185d8a99ce', 'author': 'JMC47'}
2018-02-15T20:11:45.178785	{'url': 'https://github.com/dolphin-emu/dolphin/commit/3d95bf0837b386ff0cd96f9a4c47e4a9f2437ec9#commitcomment-27589368', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': '3d95bf0837b386ff0cd96f9a4c47e4a9f2437ec9', 'author': 'degasus'}
2018-02-15T19:56:59.210964	{'url': 'https://github.com/dolphin-emu/dolphin/commit/efb97598629b96378edd783af82936185d8a99ce#commitcomment-27588992', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': 'efb97598629b96378edd783af82936185d8a99ce', 'author': 'zlice'}
2018-01-25T09:14:54.937427	{'url': 'https://github.com/dolphin-emu/dolphin/commit/91116f6dabef6677187c17adc04f4721c321499c#commitcomment-27095220', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': '91116f6dabef6677187c17adc04f4721c321499c', 'author': 'leoetlino'}
2018-01-13T10:23:04.075487	{'url': 'https://github.com/dolphin-emu/dolphin/commit/228fb8540e6f3163b4c9c35b194d8d2586fc5b6a#commitcomment-26832142', 'type': 'gh_commit_comment', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'commit': '228fb8540e6f3163b4c9c35b194d8d2586fc5b6a', 'author': 'leoetlino'}

Recent 'gh_issue_comment' events

2018-02-23T13:34:35.086498	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149', 'type': 'gh_issue_comment', 'author': 'spycrab', 'action': 'deleted', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T13:34:15Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368010149', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T13:34:15Z', 'body': '@dolphin-emu-bot rebuild', 'id': 368010149, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T13:10:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'deleted', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 15, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-23T13:34:16Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': '@dolphin-emu-bot rebuild'}
2018-02-23T13:34:16.739629	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149', 'type': 'gh_issue_comment', 'author': 'spycrab', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T13:34:15Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368010149', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T13:34:15Z', 'body': '@dolphin-emu-bot rebuild', 'id': 368010149, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T13:10:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 14, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-23T13:34:15Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': '@dolphin-emu-bot rebuild'}
2018-02-23T13:04:35.057568	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592', 'type': 'gh_issue_comment', 'author': 'gilcel', 'action': 'edited', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T13:03:51Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003592', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:04:34Z', 'body': 'I can confirm that with this fix, FullScreen Mode works again on macOS!', 'id': 368003592, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'changes': {'body': {'from': 'I can confirm that FullScreen Mode works again on macOS!'}}, 'action': 'edited', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 2, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T13:04:34Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'title': 'OGL: Call GLInterface->Update() on window resize', 'safe_author': False, 'body': 'I can confirm that with this fix, FullScreen Mode works again on macOS!'}
2018-02-23T13:03:52.063577	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592', 'type': 'gh_issue_comment', 'author': 'gilcel', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T13:03:51Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003592', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:03:51Z', 'body': 'I can confirm that FullScreen Mode works again on macOS!', 'id': 368003592, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 1, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T13:03:51Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'title': 'OGL: Call GLInterface->Update() on window resize', 'safe_author': False, 'body': 'I can confirm that FullScreen Mode works again on macOS!'}
2018-02-23T13:02:52.736281	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-368003366', 'type': 'gh_issue_comment', 'author': 'gilcel', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T13:02:50Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003366', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:02:50Z', 'body': 'YES! PR #6394 works. I edited Render.cpp to add the GLInterface->Update(); code and Fullscreen mode works again properly on macOS. Thanks!', 'id': 368003366, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-368003366'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 5, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T13:02:50Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6330, 'title': 'Improve handling of surface change/resize events in graphics backends', 'safe_author': False, 'body': 'YES! PR #6394 works. I edited Render.cpp to add the GLInterface->Update(); code and Fullscreen mode works again properly on macOS. Thanks!'}
2018-02-23T12:17:43.124654	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-367994213', 'type': 'gh_issue_comment', 'author': 'degasus', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T12:17:42Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367994213', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'MEMBER', 'updated_at': '2018-02-23T12:17:42Z', 'body': 'LGTM', 'id': 367994213, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-367994213'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 0, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T12:17:42Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'title': 'OGL: Call GLInterface->Update() on window resize', 'safe_author': True, 'body': 'LGTM'}
2018-02-23T12:04:39.500325	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367991723', 'type': 'gh_issue_comment', 'author': 'stenzek', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T12:04:38Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367991723', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T12:04:38Z', 'body': '@gilcel should be fixed with PR #6394.', 'id': 367991723, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367991723'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 4, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T12:04:38Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6330, 'title': 'Improve handling of surface change/resize events in graphics backends', 'safe_author': True, 'body': '@gilcel should be fixed with PR #6394.'}
2018-02-23T11:29:45.121381	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367984734', 'type': 'gh_issue_comment', 'author': 'gilcel', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T11:29:44Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367984734', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T11:29:44Z', 'body': "Here's a screenshot of the fullscreen issue (I built and tested it with WX and QT5 5.1.0 = same problem)\r\n\r\n![dolphin-5 0-v6350-fullscreen-issue](https://user-images.githubusercontent.com/9282533/36592212-11a57bb8-1895-11e8-9f6b-a489ac657e29.png)\r\n", 'id': 367984734, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367984734'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 3, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T11:29:44Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6330, 'title': 'Improve handling of surface change/resize events in graphics backends', 'safe_author': False, 'body': "Here's a screenshot of the fullscreen issue (I built and tested it with WX and QT5 5.1.0 = same problem)\r\n\r\n![dolphin-5 0-v6350-fullscreen-issue](https://user-images.githubusercontent.com/9282533/36592212-11a57bb8-1895-11e8-9f6b-a489ac657e29.png)\r\n"}
2018-02-23T10:39:21.365140	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367973717', 'type': 'gh_issue_comment', 'author': 'stenzek', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T10:39:20Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367973717', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T10:39:20Z', 'body': '@gilcel Thanks, I will look into it.', 'id': 367973717, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367973717'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 2, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T10:39:20Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6330, 'title': 'Improve handling of surface change/resize events in graphics backends', 'safe_author': True, 'body': '@gilcel Thanks, I will look into it.'}
2018-02-23T10:24:00.609398	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367970063', 'type': 'gh_issue_comment', 'author': 'gilcel', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T10:23:59Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367970063', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T10:23:59Z', 'body': 'Tested this commit / build 5.0-6350 on macOS 10.12+: when entering FullScreen Mode it will only display a black screen with one tile on the upper left displaying the current game.\r\nResizing back to normal window works, though.\r\nAll builds before work correctly (tested with Wii & GC games).\r\n\r\n', 'id': 367970063, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367970063'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 1, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T10:23:59Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6330, 'title': 'Improve handling of surface change/resize events in graphics backends', 'safe_author': False, 'body': 'Tested this commit / build 5.0-6350 on macOS 10.12+: when entering FullScreen Mode it will only display a black screen with one tile on the upper left displaying the current game.\r\nResizing back to normal window works, though.\r\nAll builds before work correctly (tested with Wii & GC games).\r\n\r\n'}
2018-02-23T04:47:00.060403	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6362#issuecomment-367908643', 'type': 'gh_issue_comment', 'author': 'mbc07', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-23T04:46:59Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367908643', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T04:46:59Z', 'body': "I'm late to the party but there's some details in [issue 8673](https://bugs.dolphin-emu.org/issues/8673) regarding the emulated IR cursor behavior...", 'id': 367908643, 'user': {'starred_url': 'https://api.github.com/users/mbc07/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mbc07', 'followers_url': 'https://api.github.com/users/mbc07/followers', 'login': 'mbc07', 'repos_url': 'https://api.github.com/users/mbc07/repos', 'gists_url': 'https://api.github.com/users/mbc07/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mbc07/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mbc07/orgs', 'received_events_url': 'https://api.github.com/users/mbc07/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8005966?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mbc07/following{/other_user}', 'id': 8005966, 'subscriptions_url': 'https://api.github.com/users/mbc07/subscriptions', 'html_url': 'https://github.com/mbc07'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362#issuecomment-367908643'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/mbc07/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mbc07', 'followers_url': 'https://api.github.com/users/mbc07/followers', 'login': 'mbc07', 'repos_url': 'https://api.github.com/users/mbc07/repos', 'gists_url': 'https://api.github.com/users/mbc07/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mbc07/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mbc07/orgs', 'received_events_url': 'https://api.github.com/users/mbc07/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8005966?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mbc07/following{/other_user}', 'id': 8005966, 'subscriptions_url': 'https://api.github.com/users/mbc07/subscriptions', 'html_url': 'https://github.com/mbc07'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**Outdated**\r\n![Stick Indicators](https://i.imgur.com/NJ7bFpI.png)\r\n![IR Indicators](https://i.imgur.com/PdCPvj2.png)\r\n\r\nImplements the fancy controller indicators from Wx, might require some overhauls before it can get merged.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/labels{/name}', 'comments': 15, 'id': 295222217, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Mapping: Implement indicators', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/comments', 'created_at': '2018-02-07T17:18:37Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6362', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6362.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6362.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362'}, 'assignees': [], 'closed_at': '2018-02-18T19:45:13Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6362, 'updated_at': '2018-02-23T04:46:59Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6362, 'title': 'Qt/Mapping: Implement indicators', 'safe_author': False, 'body': "I'm late to the party but there's some details in [issue 8673](https://bugs.dolphin-emu.org/issues/8673) regarding the emulated IR cursor behavior..."}
2018-02-22T23:22:53.334781	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6388#issuecomment-367857177', 'type': 'gh_issue_comment', 'author': 'leoetlino', 'action': 'edited', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T23:22:37Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367857177', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388', 'author_association': 'MEMBER', 'updated_at': '2018-02-22T23:22:52Z', 'body': "Got JMC to test this after fixing some bugs I've found during testing -- everything should be fine with a NAND or without.", 'id': 367857177, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388#issuecomment-367857177'}, 'sender': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'changes': {'body': {'from': "Got JMC to test this after fixing some bugs I've found after some testing -- everything should be fine with a NAND or without."}}, 'action': 'edited', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "This moves ec_wii functions to IOSC to have Wii crypto-related code in one place. Having it in IOSC is more logical because it more closely mirrors the original architecture. It also prevents exposing implementation details -- the dump file format, keys, default values, etc. all shouldn't be visible -- and it lets us get rid of a singleton that shouldn't ever have existed considering the crypto code is only used by ES/network and thus it would have been natural to tie state lifetime to IOS (like a Wii).\r\n\r\nBy removing the singleton, re-opening Dolphin after importing a NAND dump should now be unnecessary.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/labels{/name}', 'comments': 1, 'id': 298345401, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'title': 'Consolidate ec_wii functions into IOSC', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/comments', 'created_at': '2018-02-19T17:01:41Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6388.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6388.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'MEMBER', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6388, 'updated_at': '2018-02-22T23:22:52Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6388, 'title': 'Consolidate ec_wii functions into IOSC', 'safe_author': True, 'body': "Got JMC to test this after fixing some bugs I've found during testing -- everything should be fine with a NAND or without."}
2018-02-22T23:22:38.266033	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6388#issuecomment-367857177', 'type': 'gh_issue_comment', 'author': 'leoetlino', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T23:22:37Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367857177', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388', 'author_association': 'MEMBER', 'updated_at': '2018-02-22T23:22:37Z', 'body': "Got JMC to test this after fixing some bugs I've found after some testing -- everything should be fine with a NAND or without.", 'id': 367857177, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388#issuecomment-367857177'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "This moves ec_wii functions to IOSC to have Wii crypto-related code in one place. Having it in IOSC is more logical because it more closely mirrors the original architecture. It also prevents exposing implementation details -- the dump file format, keys, default values, etc. all shouldn't be visible -- and it lets us get rid of a singleton that shouldn't ever have existed considering the crypto code is only used by ES/network and thus it would have been natural to tie state lifetime to IOS (like a Wii).\r\n\r\nBy removing the singleton, re-opening Dolphin after importing a NAND dump should now be unnecessary.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/labels{/name}', 'comments': 0, 'id': 298345401, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'title': 'Consolidate ec_wii functions into IOSC', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/comments', 'created_at': '2018-02-19T17:01:41Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6388.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6388.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'MEMBER', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6388, 'updated_at': '2018-02-22T23:22:37Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6388, 'title': 'Consolidate ec_wii functions into IOSC', 'safe_author': True, 'body': "Got JMC to test this after fixing some bugs I've found after some testing -- everything should be fine with a NAND or without."}
2018-02-22T22:30:04.654268	{'url': 'https://github.com/dolphin-emu/sadm/pull/80#issuecomment-367844860', 'type': 'gh_issue_comment', 'author': 'delroth', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T22:30:03Z', 'url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments/367844860', 'issue_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/80', 'author_association': 'OWNER', 'updated_at': '2018-02-22T22:30:03Z', 'body': 'I think this is obsolete.', 'id': 367844860, 'user': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'html_url': 'https://github.com/dolphin-emu/sadm/pull/80#issuecomment-367844860'}, 'repository': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-22T22:29:19Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 9, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 419, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 9, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'sender': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "When building directly from a GitHub PR, Buildbot no longer has `headrev`. This PR changes central to read from `got_revision` instead when it can't find `headrev`.", 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/80/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/80/labels{/name}', 'comments': 0, 'id': 227192107, 'user': {'starred_url': 'https://api.github.com/users/ligfx/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/ligfx', 'followers_url': 'https://api.github.com/users/ligfx/followers', 'login': 'ligfx', 'repos_url': 'https://api.github.com/users/ligfx/repos', 'gists_url': 'https://api.github.com/users/ligfx/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/ligfx/events{/privacy}', 'organizations_url': 'https://api.github.com/users/ligfx/orgs', 'received_events_url': 'https://api.github.com/users/ligfx/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/594093?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/ligfx/following{/other_user}', 'id': 594093, 'subscriptions_url': 'https://api.github.com/users/ligfx/subscriptions', 'html_url': 'https://github.com/ligfx'}, 'title': 'central: handle build updates with got_revision as well as headrev', 'html_url': 'https://github.com/dolphin-emu/sadm/pull/80', 'url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/80', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/80/comments', 'created_at': '2017-05-08T22:20:32Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/80', 'diff_url': 'https://github.com/dolphin-emu/sadm/pull/80.diff', 'patch_url': 'https://github.com/dolphin-emu/sadm/pull/80.patch', 'html_url': 'https://github.com/dolphin-emu/sadm/pull/80'}, 'assignees': [], 'closed_at': '2018-02-22T22:30:03Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/sadm', 'number': 80, 'updated_at': '2018-02-22T22:30:03Z'}}, 'repo': 'dolphin-emu/sadm', 'id': 80, 'title': 'central: handle build updates with got_revision as well as headrev', 'safe_author': True, 'body': 'I think this is obsolete.'}
2018-02-22T22:29:55.615735	{'url': 'https://github.com/dolphin-emu/sadm/pull/81#issuecomment-367844831', 'type': 'gh_issue_comment', 'author': 'delroth', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T22:29:54Z', 'url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments/367844831', 'issue_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/81', 'author_association': 'OWNER', 'updated_at': '2018-02-22T22:29:54Z', 'body': 'I think this is obsolete.', 'id': 367844831, 'user': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'html_url': 'https://github.com/dolphin-emu/sadm/pull/81#issuecomment-367844831'}, 'repository': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-22T22:29:19Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 10, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 419, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 10, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'sender': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Since abfec0d and 84ebb84, PR builds no longer have the `shortrev` property. This changes buildbot to calculate it automatically from `got_revision` if it's unavailable.", 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/81/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/81/labels{/name}', 'comments': 0, 'id': 227204169, 'user': {'starred_url': 'https://api.github.com/users/ligfx/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/ligfx', 'followers_url': 'https://api.github.com/users/ligfx/followers', 'login': 'ligfx', 'repos_url': 'https://api.github.com/users/ligfx/repos', 'gists_url': 'https://api.github.com/users/ligfx/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/ligfx/events{/privacy}', 'organizations_url': 'https://api.github.com/users/ligfx/orgs', 'received_events_url': 'https://api.github.com/users/ligfx/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/594093?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/ligfx/following{/other_user}', 'id': 594093, 'subscriptions_url': 'https://api.github.com/users/ligfx/subscriptions', 'html_url': 'https://github.com/ligfx'}, 'title': 'buildbot: calculate shortrev from got_revision if unavailable', 'html_url': 'https://github.com/dolphin-emu/sadm/pull/81', 'url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/81', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/81/comments', 'created_at': '2017-05-08T23:27:42Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/81', 'diff_url': 'https://github.com/dolphin-emu/sadm/pull/81.diff', 'patch_url': 'https://github.com/dolphin-emu/sadm/pull/81.patch', 'html_url': 'https://github.com/dolphin-emu/sadm/pull/81'}, 'assignees': [], 'closed_at': '2018-02-22T22:29:55Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/sadm', 'number': 81, 'updated_at': '2018-02-22T22:29:55Z'}}, 'repo': 'dolphin-emu/sadm', 'id': 81, 'title': 'buildbot: calculate shortrev from got_revision if unavailable', 'safe_author': True, 'body': 'I think this is obsolete.'}
2018-02-22T21:03:53.822089	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367579013', 'type': 'gh_issue_comment', 'author': 'spycrab', 'action': 'edited', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T06:18:42Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367579013', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-22T21:03:49Z', 'body': '@aldelaro5 got anything else?', 'id': 367579013, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367579013'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4118, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4118, 'pushed_at': '2018-02-22T20:34:46Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4118, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T18:47:19Z'}, 'changes': {'body': {'from': '@alderado5 got anything else?'}}, 'action': 'edited', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 14, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-22T21:03:49Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': '@aldelaro5 got anything else?'}
2018-02-22T20:42:35.038534	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367815477', 'type': 'gh_issue_comment', 'author': 'spycrab', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T20:42:34Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367815477', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-22T20:42:34Z', 'body': "@aldelaro5 Actually forgot to commit that, my bad.\r\n\r\nTake your time and if you don't find anything else approve the PR so I know you're okay with it.\r\n\r\nThanks for your feedback.", 'id': 367815477, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367815477'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4118, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4118, 'pushed_at': '2018-02-22T20:34:46Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4118, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T18:47:19Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 13, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-22T20:42:34Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': "@aldelaro5 Actually forgot to commit that, my bad.\r\n\r\nTake your time and if you don't find anything else approve the PR so I know you're okay with it.\r\n\r\nThanks for your feedback."}
2018-02-22T19:35:10.148160	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367794865', 'type': 'gh_issue_comment', 'author': 'aldelaro5', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T19:35:09Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367794865', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'MEMBER', 'updated_at': '2018-02-22T19:35:09Z', 'body': "@spycrab only thing I noticed is the magenta color.  I think I wasn't explicit enough when I said it, but I meant the instructions PARAMETERS column, not the instruction column.\r\n\r\nBasically, this:\r\n\r\n![screenshot from 2018-02-22 14-33-30](https://user-images.githubusercontent.com/8932978/36559973-802c9ca0-17dd-11e8-83f7-2feade68915c.png)\r\n\r\nOther than that, so far, not really.", 'id': 367794865, 'user': {'starred_url': 'https://api.github.com/users/aldelaro5/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/aldelaro5', 'followers_url': 'https://api.github.com/users/aldelaro5/followers', 'login': 'aldelaro5', 'repos_url': 'https://api.github.com/users/aldelaro5/repos', 'gists_url': 'https://api.github.com/users/aldelaro5/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/aldelaro5/events{/privacy}', 'organizations_url': 'https://api.github.com/users/aldelaro5/orgs', 'received_events_url': 'https://api.github.com/users/aldelaro5/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8932978?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/aldelaro5/following{/other_user}', 'id': 8932978, 'subscriptions_url': 'https://api.github.com/users/aldelaro5/subscriptions', 'html_url': 'https://github.com/aldelaro5'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367794865'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4118, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4118, 'pushed_at': '2018-02-22T19:29:35Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4118, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T18:47:19Z'}, 'sender': {'starred_url': 'https://api.github.com/users/aldelaro5/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/aldelaro5', 'followers_url': 'https://api.github.com/users/aldelaro5/followers', 'login': 'aldelaro5', 'repos_url': 'https://api.github.com/users/aldelaro5/repos', 'gists_url': 'https://api.github.com/users/aldelaro5/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/aldelaro5/events{/privacy}', 'organizations_url': 'https://api.github.com/users/aldelaro5/orgs', 'received_events_url': 'https://api.github.com/users/aldelaro5/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/8932978?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/aldelaro5/following{/other_user}', 'id': 8932978, 'subscriptions_url': 'https://api.github.com/users/aldelaro5/subscriptions', 'html_url': 'https://github.com/aldelaro5'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 12, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-22T19:35:09Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': "@spycrab only thing I noticed is the magenta color.  I think I wasn't explicit enough when I said it, but I meant the instructions PARAMETERS column, not the instruction column.\r\n\r\nBasically, this:\r\n\r\n![screenshot from 2018-02-22 14-33-30](https://user-images.githubusercontent.com/8932978/36559973-802c9ca0-17dd-11e8-83f7-2feade68915c.png)\r\n\r\nOther than that, so far, not really."}
2018-02-22T06:18:43.312378	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367579013', 'type': 'gh_issue_comment', 'author': 'spycrab', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T06:18:42Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367579013', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-22T06:18:42Z', 'body': '@alderado5 got anything else?', 'id': 367579013, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-367579013'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4116, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4116, 'pushed_at': '2018-02-22T01:41:02Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355323, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4116, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T22:18:05Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 11, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-22T06:18:42Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'title': 'Qt/Debugger: Implement "Code" widget', 'safe_author': True, 'body': '@alderado5 got anything else?'}
2018-02-22T02:21:01.065696	{'url': 'https://github.com/dolphin-emu/dolphin/pull/4407#issuecomment-367545457', 'type': 'gh_issue_comment', 'author': 'Da-NKP', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-22T02:21:00Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367545457', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/4407', 'author_association': 'NONE', 'updated_at': '2018-02-22T02:21:00Z', 'body': "Seriously can't wait for this to get merged! Really want to dive in to ML in a fun and educational way. ", 'id': 367545457, 'user': {'starred_url': 'https://api.github.com/users/Da-NKP/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Da-NKP', 'followers_url': 'https://api.github.com/users/Da-NKP/followers', 'login': 'Da-NKP', 'repos_url': 'https://api.github.com/users/Da-NKP/repos', 'gists_url': 'https://api.github.com/users/Da-NKP/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Da-NKP/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Da-NKP/orgs', 'received_events_url': 'https://api.github.com/users/Da-NKP/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/14035156?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Da-NKP/following{/other_user}', 'id': 14035156, 'subscriptions_url': 'https://api.github.com/users/Da-NKP/subscriptions', 'html_url': 'https://github.com/Da-NKP'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/4407#issuecomment-367545457'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4116, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4116, 'pushed_at': '2018-02-22T01:41:02Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355323, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4116, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T22:18:05Z'}, 'sender': {'starred_url': 'https://api.github.com/users/Da-NKP/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Da-NKP', 'followers_url': 'https://api.github.com/users/Da-NKP/followers', 'login': 'Da-NKP', 'repos_url': 'https://api.github.com/users/Da-NKP/repos', 'gists_url': 'https://api.github.com/users/Da-NKP/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Da-NKP/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Da-NKP/orgs', 'received_events_url': 'https://api.github.com/users/Da-NKP/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/14035156?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Da-NKP/following{/other_user}', 'id': 14035156, 'subscriptions_url': 'https://api.github.com/users/Da-NKP/subscriptions', 'html_url': 'https://github.com/Da-NKP'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'Adds support to the MemoryWatcher API for reading linked list structures from game memory. This exact format is described in MemoryWatcher.h\n\nA working external program that interfaces with this functionality can be found here:\n\nhttps://github.com/altf4/SmashBot/tree/python-rewrite\n\n<!-- Reviewable:start -->\n\n---\n\nThis change is [<img src="https://reviewable.io/review_button.svg" height="34" align="absmiddle" alt="Reviewable"/>](https://reviewable.io/reviews/dolphin-emu/dolphin/4407)\n\n<!-- Reviewable:end -->\n', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/4407/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/4407/labels{/name}', 'comments': 23, 'id': 186159376, 'user': {'starred_url': 'https://api.github.com/users/altf4/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/altf4', 'followers_url': 'https://api.github.com/users/altf4/followers', 'login': 'altf4', 'repos_url': 'https://api.github.com/users/altf4/repos', 'gists_url': 'https://api.github.com/users/altf4/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/altf4/events{/privacy}', 'organizations_url': 'https://api.github.com/users/altf4/orgs', 'received_events_url': 'https://api.github.com/users/altf4/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/609563?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/altf4/following{/other_user}', 'id': 609563, 'subscriptions_url': 'https://api.github.com/users/altf4/subscriptions', 'html_url': 'https://github.com/altf4'}, 'title': 'Add linked list support to Memorywatcher', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/4407', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/4407', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/4407/comments', 'created_at': '2016-10-30T20:05:33Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/4407', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/4407.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/4407.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/4407'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'NONE', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 4407, 'updated_at': '2018-02-22T02:21:00Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 4407, 'title': 'Add linked list support to Memorywatcher', 'safe_author': False, 'body': "Seriously can't wait for this to get merged! Really want to dive in to ML in a fun and educational way. "}
2018-02-21T23:38:21.834861	{'url': 'https://github.com/dolphin-emu/www/pull/85#issuecomment-367515935', 'type': 'gh_issue_comment', 'author': 'MayImilae', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-21T23:38:21Z', 'url': 'https://api.github.com/repos/dolphin-emu/www/issues/comments/367515935', 'issue_url': 'https://api.github.com/repos/dolphin-emu/www/issues/85', 'author_association': 'NONE', 'updated_at': '2018-02-21T23:38:21Z', 'body': 'Yes please!', 'id': 367515935, 'user': {'starred_url': 'https://api.github.com/users/MayImilae/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/MayImilae', 'followers_url': 'https://api.github.com/users/MayImilae/followers', 'login': 'MayImilae', 'repos_url': 'https://api.github.com/users/MayImilae/repos', 'gists_url': 'https://api.github.com/users/MayImilae/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/MayImilae/events{/privacy}', 'organizations_url': 'https://api.github.com/users/MayImilae/orgs', 'received_events_url': 'https://api.github.com/users/MayImilae/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/6551020?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/MayImilae/following{/other_user}', 'id': 6551020, 'subscriptions_url': 'https://api.github.com/users/MayImilae/subscriptions', 'html_url': 'https://github.com/MayImilae'}, 'html_url': 'https://github.com/dolphin-emu/www/pull/85#issuecomment-367515935'}, 'repository': {'license': None, 'stargazers_count': 41, 'clone_url': 'https://github.com/dolphin-emu/www.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/www/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/www/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/www/commits{/sha}', 'watchers': 41, 'pushed_at': '2018-02-21T21:04:53Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/www/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/www/git/blobs{/sha}', 'archived': False, 'id': 11537983, 'open_issues': 26, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/www.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/www/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/www/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/www/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/www/stargazers', 'name': 'www', 'created_at': '2013-07-19T21:56:54Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/www/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/www/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/www/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/www/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/www/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/www/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/www/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/www.git', 'description': 'Dolphin Emulator official website source code (running on https://dolphin-emu.org/)', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/www/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/www/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/www/teams', 'size': 2404, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/www/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/www/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/www/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/www/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 41, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/www/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/www/languages', 'forks': 32, 'default_branch': 'stable', 'html_url': 'https://github.com/dolphin-emu/www', 'forks_count': 32, 'url': 'https://api.github.com/repos/dolphin-emu/www', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/www/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/www/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/www/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/www', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/www/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/www/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/www/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/www/git/tags{/sha}', 'open_issues_count': 26, 'issues_url': 'https://api.github.com/repos/dolphin-emu/www/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/www/deployments', 'full_name': 'dolphin-emu/www', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/www/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/www/releases{/id}', 'language': 'Python', 'updated_at': '2018-02-17T21:17:54Z'}, 'sender': {'starred_url': 'https://api.github.com/users/MayImilae/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/MayImilae', 'followers_url': 'https://api.github.com/users/MayImilae/followers', 'login': 'MayImilae', 'repos_url': 'https://api.github.com/users/MayImilae/repos', 'gists_url': 'https://api.github.com/users/MayImilae/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/MayImilae/events{/privacy}', 'organizations_url': 'https://api.github.com/users/MayImilae/orgs', 'received_events_url': 'https://api.github.com/users/MayImilae/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/6551020?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/MayImilae/following{/other_user}', 'id': 6551020, 'subscriptions_url': 'https://api.github.com/users/MayImilae/subscriptions', 'html_url': 'https://github.com/MayImilae'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'There have been many important new features (ubershaders for example) and many bug fixes since 5.0. Also, users on the forums keep reporting issues that could have been avoided just by using a newer version (notably Wii Remotes and System Menu stuff).\r\n', 'events_url': 'https://api.github.com/repos/dolphin-emu/www/issues/85/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/www/issues/85/labels{/name}', 'comments': 0, 'id': 299128189, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'title': 'Make development versions more visible (again)', 'html_url': 'https://github.com/dolphin-emu/www/pull/85', 'url': 'https://api.github.com/repos/dolphin-emu/www/issues/85', 'comments_url': 'https://api.github.com/repos/dolphin-emu/www/issues/85/comments', 'created_at': '2018-02-21T21:04:52Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/www/pulls/85', 'diff_url': 'https://github.com/dolphin-emu/www/pull/85.diff', 'patch_url': 'https://github.com/dolphin-emu/www/pull/85.patch', 'html_url': 'https://github.com/dolphin-emu/www/pull/85'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'MEMBER', 'repository_url': 'https://api.github.com/repos/dolphin-emu/www', 'number': 85, 'updated_at': '2018-02-21T23:38:21Z'}}, 'repo': 'dolphin-emu/www', 'id': 85, 'title': 'Make development versions more visible (again)', 'safe_author': True, 'body': 'Yes please!'}
2018-02-21T21:48:46.779501	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6392#issuecomment-367485423', 'type': 'gh_issue_comment', 'author': 'Helios747', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-21T21:48:46Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367485423', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6392', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-21T21:48:46Z', 'body': "This made my PC explode and now I'm mad and gonna merge this to make everybody else's PCs explode\r\n\r\nyou did this", 'id': 367485423, 'user': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6392#issuecomment-367485423'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4115, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4115, 'pushed_at': '2018-02-21T21:38:24Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355319, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4115, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T21:27:05Z'}, 'sender': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "`<iostream>` injects a static constructor into the translation units that it's included into, which should be avoided.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6392/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6392/labels{/name}', 'comments': 0, 'id': 299136589, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'title': 'Qt: Remove unnecessary <iostream> includes', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6392', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6392', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6392/comments', 'created_at': '2018-02-21T21:33:29Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6392', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6392.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6392.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6392'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'OWNER', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6392, 'updated_at': '2018-02-21T21:48:46Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6392, 'title': 'Qt: Remove unnecessary <iostream> includes', 'safe_author': True, 'body': "This made my PC explode and now I'm mad and gonna merge this to make everybody else's PCs explode\r\n\r\nyou did this"}
2018-02-21T21:34:07.003639	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6042#issuecomment-367480487', 'type': 'gh_issue_comment', 'author': 'Bombastisch', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-21T21:34:06Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367480487', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042', 'author_association': 'NONE', 'updated_at': '2018-02-21T21:34:06Z', 'body': 'I am sorry to slide in here as a generic user, but since this project was on hold for very long and now the WIP ticket was removed, what is the status of this PR? ', 'id': 367480487, 'user': {'starred_url': 'https://api.github.com/users/Bombastisch/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Bombastisch', 'followers_url': 'https://api.github.com/users/Bombastisch/followers', 'login': 'Bombastisch', 'repos_url': 'https://api.github.com/users/Bombastisch/repos', 'gists_url': 'https://api.github.com/users/Bombastisch/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Bombastisch/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Bombastisch/orgs', 'received_events_url': 'https://api.github.com/users/Bombastisch/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/28686186?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Bombastisch/following{/other_user}', 'id': 28686186, 'subscriptions_url': 'https://api.github.com/users/Bombastisch/subscriptions', 'html_url': 'https://github.com/Bombastisch'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6042#issuecomment-367480487'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4115, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4115, 'pushed_at': '2018-02-21T21:33:30Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355319, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4115, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T21:27:05Z'}, 'sender': {'starred_url': 'https://api.github.com/users/Bombastisch/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Bombastisch', 'followers_url': 'https://api.github.com/users/Bombastisch/followers', 'login': 'Bombastisch', 'repos_url': 'https://api.github.com/users/Bombastisch/repos', 'gists_url': 'https://api.github.com/users/Bombastisch/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Bombastisch/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Bombastisch/orgs', 'received_events_url': 'https://api.github.com/users/Bombastisch/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/28686186?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Bombastisch/following{/other_user}', 'id': 28686186, 'subscriptions_url': 'https://api.github.com/users/Bombastisch/subscriptions', 'html_url': 'https://github.com/Bombastisch'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'This PR adds support for "abstract pipelines", graphics configurations which can be drawn from videocommon. ~~Depends on PR #5343 for the state structures.~~\r\n\r\nThe eventual is to use it for all graphics drawing, replacing backend-specific shaders/programs. Currently, support is only implemented for "utility" pipelines. This is the first stage, next we can replace the various shaders currently in the backend with these pipelines (e.g. texture conversion, EFB copies, post-processing).\r\n\r\n- [x] Graphics pipeline support\r\n- [x] Compute pipeline support\r\n- [x] Utility pipeline/shader drawing\r\n- [x] Replace backend raster font with VideoCommon implementation\r\n\r\nThe next stages, replacing the shaders, will be a separate PR, to make reviewing/testing easier.\r\n\r\nThe line count looks kinda scary at the moment due to the amount of duplicated functionality. Once we drop the backend-specific code, it will drop significantly. :)', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042/labels{/name}', 'comments': 2, 'id': 256432601, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'VideoCommon pipelines ("Abstract Pipeline")', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6042', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042/comments', 'created_at': '2017-09-09T11:17:03Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6042.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6042.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6042'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6042, 'updated_at': '2018-02-21T21:34:06Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6042, 'title': 'VideoCommon pipelines ("Abstract Pipeline")', 'safe_author': False, 'body': 'I am sorry to slide in here as a generic user, but since this project was on hold for very long and now the WIP ticket was removed, what is the status of this PR? '}
2018-02-21T20:54:01.684446	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6389#issuecomment-367468609', 'type': 'gh_issue_comment', 'author': 'Helios747', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-21T20:54:00Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367468609', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-21T20:54:00Z', 'body': "buildbot exploded. It happens. Here's a link.\r\n\r\nhttps://dl.dolphin-emu.org/prs/pr-6389-dolphin-latest-x64.7z", 'id': 367468609, 'user': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389#issuecomment-367468609'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4114, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4114, 'pushed_at': '2018-02-21T17:25:42Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355319, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4114, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T14:45:32Z'}, 'sender': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Fixes the regression introduced by #6362.\r\n\r\nIncreases the save state version, as we don't save all that motion plus garbage anymore.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/labels{/name}', 'comments': 1, 'id': 298718034, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Fix emulated Wiimotes', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/comments', 'created_at': '2018-02-20T19:26:28Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6389', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6389.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6389.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389'}, 'assignees': [], 'closed_at': '2018-02-20T20:37:31Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6389, 'updated_at': '2018-02-21T20:54:00Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6389, 'title': 'Fix emulated Wiimotes', 'safe_author': True, 'body': "buildbot exploded. It happens. Here's a link.\r\n\r\nhttps://dl.dolphin-emu.org/prs/pr-6389-dolphin-latest-x64.7z"}
2018-02-21T20:53:13.551038	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6389#issuecomment-367468379', 'type': 'gh_issue_comment', 'author': 'fancymelonub', 'action': 'created', 'source': 'ghhookparser', 'raw': {'comment': {'created_at': '2018-02-21T20:53:12Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367468379', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389', 'author_association': 'NONE', 'updated_at': '2018-02-21T20:53:12Z', 'body': 'why did this not get a windows version?', 'id': 367468379, 'user': {'starred_url': 'https://api.github.com/users/fancymelonub/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/fancymelonub', 'followers_url': 'https://api.github.com/users/fancymelonub/followers', 'login': 'fancymelonub', 'repos_url': 'https://api.github.com/users/fancymelonub/repos', 'gists_url': 'https://api.github.com/users/fancymelonub/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/fancymelonub/events{/privacy}', 'organizations_url': 'https://api.github.com/users/fancymelonub/orgs', 'received_events_url': 'https://api.github.com/users/fancymelonub/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/30706150?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/fancymelonub/following{/other_user}', 'id': 30706150, 'subscriptions_url': 'https://api.github.com/users/fancymelonub/subscriptions', 'html_url': 'https://github.com/fancymelonub'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389#issuecomment-367468379'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4114, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4114, 'pushed_at': '2018-02-21T17:25:42Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355319, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4114, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-21T14:45:32Z'}, 'sender': {'starred_url': 'https://api.github.com/users/fancymelonub/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/fancymelonub', 'followers_url': 'https://api.github.com/users/fancymelonub/followers', 'login': 'fancymelonub', 'repos_url': 'https://api.github.com/users/fancymelonub/repos', 'gists_url': 'https://api.github.com/users/fancymelonub/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/fancymelonub/events{/privacy}', 'organizations_url': 'https://api.github.com/users/fancymelonub/orgs', 'received_events_url': 'https://api.github.com/users/fancymelonub/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/30706150?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/fancymelonub/following{/other_user}', 'id': 30706150, 'subscriptions_url': 'https://api.github.com/users/fancymelonub/subscriptions', 'html_url': 'https://github.com/fancymelonub'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Fixes the regression introduced by #6362.\r\n\r\nIncreases the save state version, as we don't save all that motion plus garbage anymore.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/labels{/name}', 'comments': 0, 'id': 298718034, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Fix emulated Wiimotes', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6389/comments', 'created_at': '2018-02-20T19:26:28Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6389', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6389.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6389.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6389'}, 'assignees': [], 'closed_at': '2018-02-20T20:37:31Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6389, 'updated_at': '2018-02-21T20:53:12Z'}}, 'repo': 'dolphin-emu/dolphin', 'id': 6389, 'title': 'Fix emulated Wiimotes', 'safe_author': False, 'body': 'why did this not get a windows version?'}

Recent 'gh_pull_request' events

2018-02-23T17:18:21.320148	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6042', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'Helios747', 'base_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'title': 'VideoCommon pipelines ("Abstract Pipeline")', 'head_sha': 'fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'source': 'ghhookparser', 'head_ref_name': 'videocommon-pipelines', 'repo': 'dolphin-emu/dolphin', 'id': 6042, 'action': 'closed', 'safe_author': True}
2018-02-23T15:19:35.279033	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'stenzek', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'OGL: Call GLInterface->Update() on window resize', 'head_sha': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'source': 'ghhookparser', 'head_ref_name': 'macos-resize', 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'action': 'closed', 'safe_author': True}
2018-02-23T14:09:51.356544	{'url': 'https://github.com/dolphin-emu/sadm/pull/95', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'delroth', 'base_sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'title': 'Buildbot: Work around hdiutil bug', 'head_sha': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'source': 'ghhookparser', 'head_ref_name': 'fix_osx', 'repo': 'dolphin-emu/sadm', 'id': 95, 'action': 'closed', 'safe_author': True}
2018-02-23T14:08:09.606766	{'url': 'https://github.com/dolphin-emu/sadm/pull/95', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'spycrab', 'base_sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'title': 'Buildbot: Work around hdiutil bug', 'head_sha': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'source': 'ghhookparser', 'head_ref_name': 'fix_osx', 'repo': 'dolphin-emu/sadm', 'id': 95, 'action': 'opened', 'safe_author': True}
2018-02-23T13:10:50.255492	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'spycrab', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Qt/Debugger: Implement "Code" widget', 'head_sha': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'source': 'ghhookparser', 'head_ref_name': 'qt_dbg_code', 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'action': 'synchronize', 'safe_author': True}
2018-02-23T12:28:08.159685	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'stenzek', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'OGL: Call GLInterface->Update() on window resize', 'head_sha': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'source': 'ghhookparser', 'head_ref_name': 'macos-resize', 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'action': 'synchronize', 'safe_author': True}
2018-02-23T12:03:59.365636	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'stenzek', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'OGL: Call GLInterface->Update() on window resize', 'head_sha': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'source': 'ghhookparser', 'head_ref_name': 'macos-resize', 'repo': 'dolphin-emu/dolphin', 'id': 6394, 'action': 'opened', 'safe_author': True}
2018-02-22T22:48:16.956528	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': '34b6d2ed57e858d7b1e31a8517e85bc33f50a6d4', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T22:45:35.944432	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': '77fe52509fd91dbbcaffef0eb9aaf84c845ccf61', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T22:30:04.813973	{'url': 'https://github.com/dolphin-emu/sadm/pull/80', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'delroth', 'base_sha': 'ca777b98b3877e529ca709d4c77dcdc9fe06a4a8', 'title': 'central: handle build updates with got_revision as well as headrev', 'head_sha': '828de310f62db3f004892c7d01065ee72d5a3393', 'source': 'ghhookparser', 'head_ref_name': 'centralheadrevorgotrevision', 'repo': 'dolphin-emu/sadm', 'id': 80, 'action': 'closed', 'safe_author': True}
2018-02-22T22:29:55.987679	{'url': 'https://github.com/dolphin-emu/sadm/pull/81', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'delroth', 'base_sha': 'ca777b98b3877e529ca709d4c77dcdc9fe06a4a8', 'title': 'buildbot: calculate shortrev from got_revision if unavailable', 'head_sha': '6f450d07e13c2d790169fd5925f9b1b89227b4e8', 'source': 'ghhookparser', 'head_ref_name': 'buildbotshortrev', 'repo': 'dolphin-emu/sadm', 'id': 81, 'action': 'closed', 'safe_author': True}
2018-02-22T22:29:20.409358	{'url': 'https://github.com/dolphin-emu/sadm/pull/94', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'delroth', 'base_sha': '1ac0040103df7ca865ab7f9abfa47b411d0864c1', 'title': 'Buildbot: Package Qt build on OSX', 'head_sha': 'ff50322b9d6ee7c96f168e861ecf5418d1bb71ce', 'source': 'ghhookparser', 'head_ref_name': 'osx_qt', 'repo': 'dolphin-emu/sadm', 'id': 94, 'action': 'closed', 'safe_author': True}
2018-02-22T22:27:32.779226	{'url': 'https://github.com/dolphin-emu/www/pull/85', 'type': 'gh_pull_request', 'base_ref_name': 'stable', 'author': 'delroth', 'base_sha': '4e6b0f5ef2046a713f606f4473aed3797db5335a', 'title': 'Make development versions more visible (again)', 'head_sha': 'f06af55333db2ba64b4463eca29766af71cfd129', 'source': 'ghhookparser', 'head_ref_name': 'stable', 'repo': 'dolphin-emu/www', 'id': 85, 'action': 'closed', 'safe_author': True}
2018-02-22T22:15:14.731792	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': 'd4871fb3a51ef07134a0ab17d71fc5815bc82457', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T21:41:02.785243	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': '77fe52509fd91dbbcaffef0eb9aaf84c845ccf61', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T20:34:45.919969	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'spycrab', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Qt/Debugger: Implement "Code" widget', 'head_sha': 'adfd7cc2f79d8cb5f5ee82ebfec881b548433d76', 'source': 'ghhookparser', 'head_ref_name': 'qt_dbg_code', 'repo': 'dolphin-emu/dolphin', 'id': 6386, 'action': 'synchronize', 'safe_author': True}
2018-02-22T19:48:17.810525	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': '48cfc88f76aceed67f24663958475764d1f3ec34', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T19:44:44.532382	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'title': 'Remote debugging', 'head_sha': '6c4e029f60423d9ef79811180a087abfde6e7b39', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T19:41:16.387659	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c30ac55cf4c06cf896f0264443dfa3d5de904e69', 'title': 'Remote debugging', 'head_sha': '1d48d68a4a16cad85d60dd8dbe7cd1c778347b8d', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T19:29:34.949187	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c30ac55cf4c06cf896f0264443dfa3d5de904e69', 'title': 'Remote debugging', 'head_sha': '6c4e029f60423d9ef79811180a087abfde6e7b39', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T17:13:11.990162	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6393', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'JosJuice', 'base_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'title': 'Qt: Warning fixes', 'head_sha': '1e6dc196aa49f768dfece25b0be7c1af957dce92', 'source': 'ghhookparser', 'head_ref_name': 'warning-fixes', 'repo': 'dolphin-emu/dolphin', 'id': 6393, 'action': 'closed', 'safe_author': True}
2018-02-22T17:06:31.159262	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6325', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'revel8n', 'base_sha': 'c30ac55cf4c06cf896f0264443dfa3d5de904e69', 'title': 'Remote debugging', 'head_sha': '201cbdc74ecea47ddd6d2601c53c0bfb324cd621', 'source': 'ghhookparser', 'head_ref_name': 'remote-debugging', 'repo': 'dolphin-emu/dolphin', 'id': 6325, 'action': 'synchronize', 'safe_author': False}
2018-02-22T16:57:47.523035	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6393', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'leoetlino', 'base_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'title': 'Qt: Warning fixes', 'head_sha': '1e6dc196aa49f768dfece25b0be7c1af957dce92', 'source': 'ghhookparser', 'head_ref_name': 'warning-fixes', 'repo': 'dolphin-emu/dolphin', 'id': 6393, 'action': 'opened', 'safe_author': True}
2018-02-22T12:26:08.555037	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6315', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'stenzek', 'base_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'title': 'Abstract Framebuffers', 'head_sha': '65fbda8ac46551266f06d593a0d4cdc6927a7f12', 'source': 'ghhookparser', 'head_ref_name': 'abstract-framebuffers', 'repo': 'dolphin-emu/dolphin', 'id': 6315, 'action': 'synchronize', 'safe_author': True}
2018-02-22T12:03:29.837238	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6042', 'type': 'gh_pull_request', 'base_ref_name': 'master', 'author': 'stenzek', 'base_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'title': 'VideoCommon pipelines ("Abstract Pipeline")', 'head_sha': 'fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'source': 'ghhookparser', 'head_ref_name': 'videocommon-pipelines', 'repo': 'dolphin-emu/dolphin', 'id': 6042, 'action': 'synchronize', 'safe_author': True}

Recent 'gh_pull_request_comment' events

2018-02-21T15:12:34.321676	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667905', 'type': 'gh_pull_request_comment', 'author': 'gwicks', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T15:10:19.787910	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667125', 'type': 'gh_pull_request_comment', 'author': 'gwicks', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T09:05:55.757240	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559553', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'edited'}
2018-02-21T09:05:44.170617	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169570924', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T08:19:45.186812	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169560753', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'edited'}
2018-02-21T08:18:31.645175	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169560753', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T08:11:55.009568	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559553', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T08:10:49.042147	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559375', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'id': 6391, 'action': 'created'}
2018-02-21T02:25:59.525423	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520156', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:59.524339	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518705', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:59.522980	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519530', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:59.521543	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519767', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:59.520419	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519941', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:59.519102	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518602', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:58.786940	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519275', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:58.783644	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520726', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:58.780657	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519416', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:57.970721	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519844', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:57.919065	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519375', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-21T02:25:57.898774	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520005', 'type': 'gh_pull_request_comment', 'author': 'lioncash', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '37eb33694808abefac388155beaac9f82fccdb21', 'id': 6386, 'action': 'created'}
2018-02-20T15:19:26.628585	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351361', 'type': 'gh_pull_request_comment', 'author': 'mahdihijazi', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'id': 6282, 'action': 'created'}
2018-02-20T15:18:33.871615	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351068', 'type': 'gh_pull_request_comment', 'author': 'mahdihijazi', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'id': 6282, 'action': 'created'}
2018-02-20T15:12:28.539732	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169348979', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': True, 'hash': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'id': 6282, 'action': 'created'}
2018-02-19T14:26:41.656180	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6316#discussion_r169089829', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '544f43e02a44abaada67d25bbe698601fe1726e3', 'id': 6316, 'action': 'edited'}
2018-02-19T14:26:04.344922	{'url': 'https://github.com/dolphin-emu/dolphin/pull/6316#discussion_r169089829', 'type': 'gh_pull_request_comment', 'author': 'degasus', 'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'is_part_of_review': False, 'hash': '544f43e02a44abaada67d25bbe698601fe1726e3', 'id': 6316, 'action': 'created'}

Recent 'gh_pull_request_review' events

2018-02-23T01:09:06.886241	{'state': 'approved', 'type': 'gh_pull_request_review', 'author': 'lioncash', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6388#pullrequestreview-98785128', 'pr_id': 6388, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Consolidate ec_wii functions into IOSC', 'action': 'submitted'}
2018-02-21T15:12:34.317923	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'gwicks', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98230839', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169667905', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667905', 'diff_hunk': '@@ -117,12 +123,12 @@ public void TrackEvent(MotionEvent event)\n \t\t\t{\n \t\t\t\tfloat touchX = event.getX(i);\n \t\t\t\tfloat touchY = event.getY(i);\n-\t\t\t\tfloat maxY = getBounds().bottom;\n-\t\t\t\tfloat maxX = getBounds().right;\n-\t\t\t\ttouchX -= getBounds().centerX();\n-\t\t\t\tmaxX -= getBounds().centerX();\n-\t\t\t\ttouchY -= getBounds().centerY();\n-\t\t\t\tmaxY -= getBounds().centerY();\n+\t\t\t\tfloat maxY = getVirtBounds().bottom;\n+\t\t\t\tfloat maxX = getVirtBounds().right;\n+\t\t\t\ttouchX -= getVirtBounds().centerX();\n+\t\t\t\tmaxX -= getVirtBounds().centerX();\n+\t\t\t\ttouchY -= getVirtBounds().centerY();\n+\t\t\t\tmaxY -= getVirtBounds().centerY();', 'pull_request_review_id': 98230839, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T15:12:32Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T15:12:32Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169667905'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667905'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'in_reply_to_id': 169559553, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 58, 'author_association': 'CONTRIBUTOR', 'position': 58, 'id': 169667905, 'user': {'starred_url': 'https://api.github.com/users/gwicks/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gwicks', 'followers_url': 'https://api.github.com/users/gwicks/followers', 'login': 'gwicks', 'repos_url': 'https://api.github.com/users/gwicks/repos', 'gists_url': 'https://api.github.com/users/gwicks/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gwicks/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gwicks/orgs', 'received_events_url': 'https://api.github.com/users/gwicks/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1276215?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gwicks/following{/other_user}', 'id': 1276215, 'subscriptions_url': 'https://api.github.com/users/gwicks/subscriptions', 'html_url': 'https://github.com/gwicks'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': "It was like this before, so I'd assume there was a reason it was written that way. I can try it though."}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T15:10:19.786420	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'gwicks', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98229912', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169667125', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667125', 'diff_hunk': '@@ -102,6 +106,8 @@ public void TrackEvent(MotionEvent event)\n \t\t\t{\n \t\t\t\tmPressedState = false;\n \t\t\t\taxises[0] = axises[1] = 0.0f;\n+\t\t\t\tsetVirtBounds(new Rect(mOrigBounds.left, mOrigBounds.top, mOrigBounds.right, mOrigBounds.bottom));\n+\t\t\t\tsetBounds(new Rect(mOrigBounds.left, mOrigBounds.top, mOrigBounds.right, mOrigBounds.bottom));', 'pull_request_review_id': 98229912, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T15:10:17Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T15:10:17Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169667125'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169667125'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'in_reply_to_id': 169559375, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 39, 'author_association': 'CONTRIBUTOR', 'position': 39, 'id': 169667125, 'user': {'starred_url': 'https://api.github.com/users/gwicks/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gwicks', 'followers_url': 'https://api.github.com/users/gwicks/followers', 'login': 'gwicks', 'repos_url': 'https://api.github.com/users/gwicks/repos', 'gists_url': 'https://api.github.com/users/gwicks/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gwicks/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gwicks/orgs', 'received_events_url': 'https://api.github.com/users/gwicks/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/1276215?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gwicks/following{/other_user}', 'id': 1276215, 'subscriptions_url': 'https://api.github.com/users/gwicks/subscriptions', 'html_url': 'https://github.com/gwicks'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': 'Nope, there is not.'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T09:05:44.802664	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98115583', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169570924', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169570924', 'diff_hunk': '@@ -93,6 +96,7 @@ public void TrackEvent(MotionEvent event)\n \t\t\tif (getBounds().contains((int)event.getX(pointerIndex), (int)event.getY(pointerIndex)))\n \t\t\t{\n \t\t\t\tmPressedState = true;\n+\t\t\t\tgetVirtBounds().offset((int)event.getX(pointerIndex) - getVirtBounds().centerX(), (int)event.getY(pointerIndex) - getVirtBounds().centerY());', 'pull_request_review_id': 98115583, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T09:05:43Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T09:05:43Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169570924'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169570924'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 30, 'author_association': 'MEMBER', 'position': 30, 'id': 169570924, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': 'Is the mVirtBounds object used outside of this class? If not, you could just store the x/y coordinate here and use them again in line 128 / 130 instead of getVirtBounds().centerX/Y.'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T08:18:31.640962	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98103729', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169560753', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169560753', 'diff_hunk': '@@ -178,17 +184,17 @@ public boolean onConfigureTouch(MotionEvent event)\n \n \tprivate void SetInnerBounds()\n \t{\n-\t\tint X = getBounds().centerX() + (int)((axises[1]) * (getBounds().width() / 2));\n-\t\tint Y = getBounds().centerY() + (int)((axises[0]) * (getBounds().height() / 2));\n-\n-\t\tif (X > getBounds().centerX() + (getBounds().width() / 2))\n-\t\t\tX = getBounds().centerX() + (getBounds().width() / 2);\n-\t\tif (X < getBounds().centerX() - (getBounds().width() / 2))\n-\t\t\tX = getBounds().centerX() - (getBounds().width() / 2);\n-\t\tif (Y > getBounds().centerY() + (getBounds().height() / 2))\n-\t\t\tY = getBounds().centerY() + (getBounds().height() / 2);\n-\t\tif (Y < getBounds().centerY() - (getBounds().height() / 2))\n-\t\t\tY = getBounds().centerY() - (getBounds().height() / 2);\n+\t\tint X = getVirtBounds().centerX() + (int)((axises[1]) * (getVirtBounds().width() / 2));\n+\t\tint Y = getVirtBounds().centerY() + (int)((axises[0]) * (getVirtBounds().height() / 2));\n+\n+\t\tif (X > getVirtBounds().centerX() + (getVirtBounds().width() / 2))\n+\t\t\tX = getVirtBounds().centerX() + (getVirtBounds().width() / 2);\n+\t\tif (X < getVirtBounds().centerX() - (getVirtBounds().width() / 2))\n+\t\t\tX = getVirtBounds().centerX() - (getVirtBounds().width() / 2);\n+\t\tif (Y > getVirtBounds().centerY() + (getVirtBounds().height() / 2))\n+\t\t\tY = getVirtBounds().centerY() + (getVirtBounds().height() / 2);\n+\t\tif (Y < getVirtBounds().centerY() - (getVirtBounds().height() / 2))\n+\t\t\tY = getVirtBounds().centerY() - (getVirtBounds().height() / 2);', 'pull_request_review_id': 98103729, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T08:18:30Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T08:18:30Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169560753'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169560753'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 87, 'author_association': 'MEMBER', 'position': 87, 'id': 169560753, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': 'What about:\r\n```\r\nint width = getVirtBounds().width();\r\nint X = getVirtBounds().centerX() + Math.max(Math.min((int)(axises[1] * width)), width), -width) / 2;\r\n```\r\nFeel free to google for a clamp function instead ;)'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T08:11:56.134453	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98102353', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169559553', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559553', 'diff_hunk': '@@ -117,12 +123,12 @@ public void TrackEvent(MotionEvent event)\n \t\t\t{\n \t\t\t\tfloat touchX = event.getX(i);\n \t\t\t\tfloat touchY = event.getY(i);\n-\t\t\t\tfloat maxY = getBounds().bottom;\n-\t\t\t\tfloat maxX = getBounds().right;\n-\t\t\t\ttouchX -= getBounds().centerX();\n-\t\t\t\tmaxX -= getBounds().centerX();\n-\t\t\t\ttouchY -= getBounds().centerY();\n-\t\t\t\tmaxY -= getBounds().centerY();\n+\t\t\t\tfloat maxY = getVirtBounds().bottom;\n+\t\t\t\tfloat maxX = getVirtBounds().right;\n+\t\t\t\ttouchX -= getVirtBounds().centerX();\n+\t\t\t\tmaxX -= getVirtBounds().centerX();\n+\t\t\t\ttouchY -= getVirtBounds().centerY();\n+\t\t\t\tmaxY -= getVirtBounds().centerY();', 'pull_request_review_id': 98102353, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T08:11:54Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T08:11:54Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169559553'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559553'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 58, 'author_association': 'MEMBER', 'position': 58, 'id': 169559553, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': "I wonder, isn't\r\ngetVirtBounds().right - getVirtBounds().centerX()\r\na constant? Why do we always recalculate it?"}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T08:10:49.038227	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6391#pullrequestreview-98102135', 'pr_id': 6391, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169559375', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559375', 'diff_hunk': '@@ -102,6 +106,8 @@ public void TrackEvent(MotionEvent event)\n \t\t\t{\n \t\t\t\tmPressedState = false;\n \t\t\t\taxises[0] = axises[1] = 0.0f;\n+\t\t\t\tsetVirtBounds(new Rect(mOrigBounds.left, mOrigBounds.top, mOrigBounds.right, mOrigBounds.bottom));\n+\t\t\t\tsetBounds(new Rect(mOrigBounds.left, mOrigBounds.top, mOrigBounds.right, mOrigBounds.bottom));', 'pull_request_review_id': 98102135, 'original_commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'updated_at': '2018-02-21T08:10:47Z', 'path': 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/overlay/InputOverlayDrawableJoystick.java', 'created_at': '2018-02-21T08:10:47Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169559375'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6391#discussion_r169559375'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391'}}, 'commit_id': '845cff5cd2fdca376ea6f5f65c428ccdcfbb0696', 'original_position': 39, 'author_association': 'MEMBER', 'position': 39, 'id': 169559375, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6391', 'body': 'Is there no "copy" method on Rect?'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Make on-screen joysticks center on the initial touch input.', 'action': 'submitted'}
2018-02-21T02:25:59.515197	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'lioncash', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#pullrequestreview-98056927', 'pr_id': 6386, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518602', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518602', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)\n+  {\n+    m_address = address;\n+    Update();\n+  }\n+}\n+\n+void CodeViewWidget::ReplaceAddress(u32 address, bool blr)\n+{\n+  auto found = std::find_if(m_repl_list.begin(), m_repl_list.end(),\n+                            [address](ReplStruct r) { return r.address == address; });\n+\n+  if (found != m_repl_list.end())\n+  {\n+    PowerPC::debug_interface.WriteExtraMemory(0, (*found).old_value, address);\n+    m_repl_list.erase(found);\n+  }\n+  else\n+  {\n+    ReplStruct repl;\n+\n+    repl.address = address;\n+    repl.old_value = PowerPC::debug_interface.ReadInstruction(address);\n+\n+    m_repl_list.push_back(repl);\n+\n+    PowerPC::debug_interface.Patch(address, blr ? 0x60000000 : 0x4e800020);\n+  }\n+\n+  Update();\n+}\n+\n+static bool IsBranchInstruction(UGeckoInstruction inst)\n+{\n+  return true;\n+}\n+\n+void CodeViewWidget::OnContextMenu()\n+{\n+  if (m_context_item == nullptr)\n+    m_context_item = selectedItems()[0];\n+\n+  QMenu* menu = new QMenu(this);\n+\n+  bool running = Core::GetState() != Core::State::Uninitialized;\n+\n+  const u32 addr = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  bool has_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+  auto* follow_branch_action =\n+      AddAction(menu, tr("Follow &branch"), this, &CodeViewWidget::OnFollowBranch);\n+\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("&Copy address"), this, &CodeViewWidget::OnCopyAddress);\n+  auto* copy_address_action =\n+      AddAction(menu, tr("Copy &function"), this, &CodeViewWidget::OnCopyFunction);\n+  auto* copy_line_action =\n+      AddAction(menu, tr("Copy code &line"), this, &CodeViewWidget::OnCopyCode);\n+  auto* copy_hex_action = AddAction(menu, tr("Copy &hex"), this, &CodeViewWidget::OnCopyHex);\n+  menu->addSeparator();\n+\n+  auto* symbol_rename_action =\n+      AddAction(menu, tr("&Rename symbol"), this, &CodeViewWidget::OnRenameSymbol);\n+  auto* symbol_size_action =\n+      AddAction(menu, tr("Set symbol &size"), this, &CodeViewWidget::OnSetSymbolSize);\n+  auto* symbol_end_action =\n+      AddAction(menu, tr("Set symbol &end address"), this, &CodeViewWidget::OnSetSymbolEndAddress);\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("Run &To Here"), this, &CodeViewWidget::OnRunToHere);\n+  auto* function_action =\n+      AddAction(menu, tr("&Add function"), this, &CodeViewWidget::OnAddFunction);\n+  auto* ppc_action = AddAction(menu, tr("PPC vs x86"), this, &CodeViewWidget::OnPPCComparison);\n+  auto* insert_blr_action = AddAction(menu, tr("&Insert blr"), this, &CodeViewWidget::OnInsertBLR);\n+  auto* insert_nop_action = AddAction(menu, tr("Insert &nop"), this, &CodeViewWidget::OnInsertNOP);\n+  auto* replace_action =\n+      AddAction(menu, tr("Re&place instruction"), this, &CodeViewWidget::OnReplaceInstruction);\n+\n+  follow_branch_action->setEnabled(running &&\n+                                   IsBranchInstruction(PowerPC::HostRead_Instruction(addr)));\n+\n+  for (auto* action : {copy_address_action, copy_line_action, copy_hex_action, function_action,\n+                       ppc_action, insert_blr_action, insert_nop_action, replace_action})\n+    action->setEnabled(running);\n+\n+  for (auto* action : {symbol_rename_action, symbol_size_action, symbol_end_action})\n+    action->setEnabled(has_symbol);\n+\n+  menu->exec(QCursor::pos());\n+\n+  Update();\n+}\n+\n+void CodeViewWidget::OnCopyAddress()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+}\n+\n+void CodeViewWidget::OnCopyCode()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(\n+      QString::fromStdString(PowerPC::debug_interface.Disassemble(addr)));\n+}\n+\n+void CodeViewWidget::OnCopyFunction()\n+{\n+  const u32 address = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(address);\n+  if (symbol)\n+  {\n+    std::string text;\n+    text = text + symbol->name + "\\r\\n";', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:06:32Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518602'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518602'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 287, 'author_association': 'OWNER', 'position': 287, 'id': 169518602, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '`std::string text = symbol->name + "\\r\\n";`'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518705', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518705', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:07:25Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518705'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518705'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 169, 'author_association': 'OWNER', 'position': 169, 'id': 169518705, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (m_address == address)\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519275', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519275', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:12:33Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519275'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519275'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 337, 'author_association': 'OWNER', 'position': 337, 'id': 169519275, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```\r\n\r\nThis can also be moved above `sync_event`'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519375', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519375', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    PowerPC::CoreMode old_mode = PowerPC::GetMode();\n+    PowerPC::SetMode(PowerPC::CoreMode::Interpreter);\n+    PowerPC::breakpoints.ClearAllTemporary();\n+    CPU::StepOpcode(&sync_event);\n+    sync_event.WaitFor(std::chrono::milliseconds(20));\n+    PowerPC::SetMode(old_mode);\n+    Core::DisplayMessage(tr("Step successful!").toStdString(), 2000);\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+void CodeWidget::StepOver()\n+{\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:13:35Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519375'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519375'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 357, 'author_association': 'OWNER', 'position': 357, 'id': 169519375, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519416', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519416', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    PowerPC::CoreMode old_mode = PowerPC::GetMode();\n+    PowerPC::SetMode(PowerPC::CoreMode::Interpreter);\n+    PowerPC::breakpoints.ClearAllTemporary();\n+    CPU::StepOpcode(&sync_event);\n+    sync_event.WaitFor(std::chrono::milliseconds(20));\n+    PowerPC::SetMode(old_mode);\n+    Core::DisplayMessage(tr("Step successful!").toStdString(), 2000);\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+void CodeWidget::StepOver()\n+{\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    UGeckoInstruction inst = PowerPC::HostRead_Instruction(PC);\n+    if (inst.LK)\n+    {\n+      PowerPC::breakpoints.ClearAllTemporary();\n+      PowerPC::breakpoints.Add(PC + 4, true);\n+      CPU::EnableStepping(false);\n+      Core::DisplayMessage(tr("Step over in progress...").toStdString(), 2000);\n+    }\n+    else\n+    {\n+      Step();\n+    }\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+// Returns true on a rfi, blr or on a bclr that evaluates to true.\n+static bool WillInstructionReturn(UGeckoInstruction inst)\n+{\n+  // Is a rfi instruction\n+  if (inst.hex == 0x4C000064u)\n+    return true;\n+  bool counter = (inst.BO_2 >> 2 & 1) != 0 || (CTR != 0) != ((inst.BO_2 >> 1 & 1) != 0);\n+  bool condition = inst.BO_2 >> 4 != 0 || GetCRBit(inst.BI_2) == (inst.BO_2 >> 3 & 1);\n+  bool isBclr = inst.OPCD_7 == 0b010011 && (inst.hex >> 1 & 0b10000) != 0;\n+  return isBclr && counter && condition && !inst.LK_3;\n+}\n+\n+void CodeWidget::StepOut()\n+{\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:13:57Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519416'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519416'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 394, 'author_association': 'OWNER', 'position': 394, 'id': 169519416, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519530', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519530', 'diff_hunk': '@@ -0,0 +1,70 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#pragma once\n+\n+#include <QDockWidget>\n+#include <QString>\n+\n+#include "Core/PowerPC/PowerPC.h"', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.h', 'created_at': '2018-02-21T02:14:51Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519530'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519530'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 10, 'author_association': 'OWNER', 'position': 10, 'id': 169519530, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Does this need to be in the header?'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519767', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519767', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:16:54Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519767'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519767'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 209, 'author_association': 'OWNER', 'position': 209, 'id': 169519767, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': "this can be an `unsigned int`, Qt has a sane API and doesn't return unsigned long, like wx does."}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519844', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519844', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);\n+\n+  if (good && address <= std::numeric_limits<u32>::max())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:17:38Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519844'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519844'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 211, 'author_association': 'OWNER', 'position': 211, 'id': 169519844, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Because of the above, this can just be inverted to \r\n\r\n```cpp\r\nif (!good)\r\n{\r\n  QMessageBox::warning(this, tr("Error"), tr("Invalid RSO module address: %1").arg(text));\r\n  return;\r\n}\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519941', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519941', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);\n+\n+  if (good && address <= std::numeric_limits<u32>::max())\n+  {\n+    RSOChainView rso_chain;\n+    if (rso_chain.Load(static_cast<u32>(address)))\n+    {\n+      rso_chain.Apply(&g_symbolDB);\n+      Host_NotifyMapLoaded();\n+    }\n+    else\n+    {\n+      QMessageBox::warning(this, tr("Error"), tr("Failed to load RSO module at %1").arg(text));\n+    }\n+  }\n+  else\n+  {\n+    QMessageBox::warning(this, tr("Error"), tr("Invalid RSO module address: %1").arg(text));\n+  }\n+}\n+\n+void MenuBar::LoadSymbolMap()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  bool map_exists = CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  if (!map_exists)\n+  {\n+    g_symbolDB.Clear();\n+    PPCAnalyst::FindFunctions(0x81300000, 0x81800000, &g_symbolDB);\n+    SignatureDB db(SignatureDB::HandlerType::DSY);\n+    if (db.Load(File::GetSysDirectory() + TOTALDB))\n+      db.Apply(&g_symbolDB);\n+    QMessageBox::warning(this, tr("Error"),\n+                         tr("\'%1\' not found, scanning for common functions instead")\n+                             .arg(QString::fromStdString(writable_map_file)));\n+  }\n+  else\n+  {\n+    g_symbolDB.LoadMap(existing_map_file);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Loaded symbols from \'%1\'").arg(QString::fromStdString(existing_map_file.c_str())));\n+  }\n+  HLE::PatchFunctions();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::SaveSymbolMap()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  g_symbolDB.SaveSymbolMap(writable_map_file);\n+}\n+\n+void MenuBar::LoadOtherSymbolMap()\n+{\n+  QString file = QFileDialog::getOpenFileName(this, tr("Load map file"),\n+                                              QString::fromStdString(File::GetUserPath(D_MAPS_IDX)),\n+                                              tr("Dolphin Map File (*.map)"));\n+\n+  if (!file.isEmpty())\n+  {\n+    g_symbolDB.LoadMap(file.toStdString());\n+  }\n+  HLE::PatchFunctions();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::SaveSymbolMapAs()\n+{\n+  const std::string& title_id_str = SConfig::GetInstance().m_debugger_game_id;\n+  QString file = QFileDialog::getSaveFileName(\n+      this, tr("Save map file"),\n+      QString::fromStdString(File::GetUserPath(D_MAPS_IDX) + "/" + title_id_str + ".map"),\n+      tr("Dolphin Map File (*.map)"));\n+\n+  if (!file.isEmpty())\n+    g_symbolDB.SaveSymbolMap(file.toStdString());\n+}\n+\n+void MenuBar::SaveCode()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  const std::string path =\n+      writable_map_file.substr(0, writable_map_file.find_last_of(".")) + "_code.map";\n+  g_symbolDB.SaveCodeMap(path);\n+}\n+\n+void MenuBar::CreateSignatureFile()\n+{\n+  QString text = QInputDialog::getText(\n+      this, tr("Input"), tr("Only export symbols with prefix:\\n(Blank for all symbols)"));\n+\n+  if (!text.isEmpty())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:18:33Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519941'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519941'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 306, 'author_association': 'OWNER', 'position': 306, 'id': 169519941, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (text.isEmpty())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520005', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520005', 'diff_hunk': '@@ -6,6 +6,7 @@\n \n #include <memory>\n \n+#include <QFont>', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Settings.h', 'created_at': '2018-02-21T02:19:05Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520005'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520005'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 4, 'author_association': 'OWNER', 'position': 4, 'id': 169520005, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'This should be able to be a forward declaration.'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520156', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520156', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)\n+  {\n+    m_address = address;\n+    Update();\n+  }\n+}\n+\n+void CodeViewWidget::ReplaceAddress(u32 address, bool blr)\n+{\n+  auto found = std::find_if(m_repl_list.begin(), m_repl_list.end(),\n+                            [address](ReplStruct r) { return r.address == address; });\n+\n+  if (found != m_repl_list.end())\n+  {\n+    PowerPC::debug_interface.WriteExtraMemory(0, (*found).old_value, address);\n+    m_repl_list.erase(found);\n+  }\n+  else\n+  {\n+    ReplStruct repl;\n+\n+    repl.address = address;\n+    repl.old_value = PowerPC::debug_interface.ReadInstruction(address);\n+\n+    m_repl_list.push_back(repl);\n+\n+    PowerPC::debug_interface.Patch(address, blr ? 0x60000000 : 0x4e800020);\n+  }\n+\n+  Update();\n+}\n+\n+static bool IsBranchInstruction(UGeckoInstruction inst)\n+{\n+  return true;\n+}\n+\n+void CodeViewWidget::OnContextMenu()\n+{\n+  if (m_context_item == nullptr)\n+    m_context_item = selectedItems()[0];\n+\n+  QMenu* menu = new QMenu(this);\n+\n+  bool running = Core::GetState() != Core::State::Uninitialized;\n+\n+  const u32 addr = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  bool has_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+  auto* follow_branch_action =\n+      AddAction(menu, tr("Follow &branch"), this, &CodeViewWidget::OnFollowBranch);\n+\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("&Copy address"), this, &CodeViewWidget::OnCopyAddress);\n+  auto* copy_address_action =\n+      AddAction(menu, tr("Copy &function"), this, &CodeViewWidget::OnCopyFunction);\n+  auto* copy_line_action =\n+      AddAction(menu, tr("Copy code &line"), this, &CodeViewWidget::OnCopyCode);\n+  auto* copy_hex_action = AddAction(menu, tr("Copy &hex"), this, &CodeViewWidget::OnCopyHex);\n+  menu->addSeparator();\n+\n+  auto* symbol_rename_action =\n+      AddAction(menu, tr("&Rename symbol"), this, &CodeViewWidget::OnRenameSymbol);\n+  auto* symbol_size_action =\n+      AddAction(menu, tr("Set symbol &size"), this, &CodeViewWidget::OnSetSymbolSize);\n+  auto* symbol_end_action =\n+      AddAction(menu, tr("Set symbol &end address"), this, &CodeViewWidget::OnSetSymbolEndAddress);\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("Run &To Here"), this, &CodeViewWidget::OnRunToHere);\n+  auto* function_action =\n+      AddAction(menu, tr("&Add function"), this, &CodeViewWidget::OnAddFunction);\n+  auto* ppc_action = AddAction(menu, tr("PPC vs x86"), this, &CodeViewWidget::OnPPCComparison);\n+  auto* insert_blr_action = AddAction(menu, tr("&Insert blr"), this, &CodeViewWidget::OnInsertBLR);\n+  auto* insert_nop_action = AddAction(menu, tr("Insert &nop"), this, &CodeViewWidget::OnInsertNOP);\n+  auto* replace_action =\n+      AddAction(menu, tr("Re&place instruction"), this, &CodeViewWidget::OnReplaceInstruction);\n+\n+  follow_branch_action->setEnabled(running &&\n+                                   IsBranchInstruction(PowerPC::HostRead_Instruction(addr)));\n+\n+  for (auto* action : {copy_address_action, copy_line_action, copy_hex_action, function_action,\n+                       ppc_action, insert_blr_action, insert_nop_action, replace_action})\n+    action->setEnabled(running);\n+\n+  for (auto* action : {symbol_rename_action, symbol_size_action, symbol_end_action})\n+    action->setEnabled(has_symbol);\n+\n+  menu->exec(QCursor::pos());\n+\n+  Update();\n+}\n+\n+void CodeViewWidget::OnCopyAddress()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+}\n+\n+void CodeViewWidget::OnCopyCode()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(\n+      QString::fromStdString(PowerPC::debug_interface.Disassemble(addr)));\n+}\n+\n+void CodeViewWidget::OnCopyFunction()\n+{\n+  const u32 address = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(address);\n+  if (symbol)', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:20:29Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520156'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520156'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 284, 'author_association': 'OWNER', 'position': 284, 'id': 169520156, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!symbol)\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520726', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520726', 'diff_hunk': '@@ -278,11 +279,13 @@ void MappingWindow::SetMappingType(MappingWindow::Type type)\n     widget = new HotkeyGeneral(this);\n     AddWidget(tr("General"), widget);\n     AddWidget(tr("TAS Tools"), new HotkeyTAS(this));\n+    AddWidget(tr("Debugging"), new HotkeyDebugging(this));\n     AddWidget(tr("Wii and Wii Remote"), new HotkeyWii(this));\n     AddWidget(tr("Graphics"), new HotkeyGraphics(this));\n     AddWidget(tr("3D"), new Hotkey3D(this));\n     AddWidget(tr("Save and Load State"), new HotkeyStates(this));\n     setWindowTitle(tr("Hotkey Settings"));\n+', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp', 'created_at': '2018-02-21T02:25:26Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520726'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520726'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 18, 'author_association': 'OWNER', 'position': 18, 'id': 169520726, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Unnecessary newline?'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Qt/Debugger: Implement "Code" widget', 'action': 'submitted'}
2018-02-21T02:25:58.773460	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'lioncash', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6386#pullrequestreview-98056927', 'pr_id': 6386, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518602', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518602', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)\n+  {\n+    m_address = address;\n+    Update();\n+  }\n+}\n+\n+void CodeViewWidget::ReplaceAddress(u32 address, bool blr)\n+{\n+  auto found = std::find_if(m_repl_list.begin(), m_repl_list.end(),\n+                            [address](ReplStruct r) { return r.address == address; });\n+\n+  if (found != m_repl_list.end())\n+  {\n+    PowerPC::debug_interface.WriteExtraMemory(0, (*found).old_value, address);\n+    m_repl_list.erase(found);\n+  }\n+  else\n+  {\n+    ReplStruct repl;\n+\n+    repl.address = address;\n+    repl.old_value = PowerPC::debug_interface.ReadInstruction(address);\n+\n+    m_repl_list.push_back(repl);\n+\n+    PowerPC::debug_interface.Patch(address, blr ? 0x60000000 : 0x4e800020);\n+  }\n+\n+  Update();\n+}\n+\n+static bool IsBranchInstruction(UGeckoInstruction inst)\n+{\n+  return true;\n+}\n+\n+void CodeViewWidget::OnContextMenu()\n+{\n+  if (m_context_item == nullptr)\n+    m_context_item = selectedItems()[0];\n+\n+  QMenu* menu = new QMenu(this);\n+\n+  bool running = Core::GetState() != Core::State::Uninitialized;\n+\n+  const u32 addr = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  bool has_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+  auto* follow_branch_action =\n+      AddAction(menu, tr("Follow &branch"), this, &CodeViewWidget::OnFollowBranch);\n+\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("&Copy address"), this, &CodeViewWidget::OnCopyAddress);\n+  auto* copy_address_action =\n+      AddAction(menu, tr("Copy &function"), this, &CodeViewWidget::OnCopyFunction);\n+  auto* copy_line_action =\n+      AddAction(menu, tr("Copy code &line"), this, &CodeViewWidget::OnCopyCode);\n+  auto* copy_hex_action = AddAction(menu, tr("Copy &hex"), this, &CodeViewWidget::OnCopyHex);\n+  menu->addSeparator();\n+\n+  auto* symbol_rename_action =\n+      AddAction(menu, tr("&Rename symbol"), this, &CodeViewWidget::OnRenameSymbol);\n+  auto* symbol_size_action =\n+      AddAction(menu, tr("Set symbol &size"), this, &CodeViewWidget::OnSetSymbolSize);\n+  auto* symbol_end_action =\n+      AddAction(menu, tr("Set symbol &end address"), this, &CodeViewWidget::OnSetSymbolEndAddress);\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("Run &To Here"), this, &CodeViewWidget::OnRunToHere);\n+  auto* function_action =\n+      AddAction(menu, tr("&Add function"), this, &CodeViewWidget::OnAddFunction);\n+  auto* ppc_action = AddAction(menu, tr("PPC vs x86"), this, &CodeViewWidget::OnPPCComparison);\n+  auto* insert_blr_action = AddAction(menu, tr("&Insert blr"), this, &CodeViewWidget::OnInsertBLR);\n+  auto* insert_nop_action = AddAction(menu, tr("Insert &nop"), this, &CodeViewWidget::OnInsertNOP);\n+  auto* replace_action =\n+      AddAction(menu, tr("Re&place instruction"), this, &CodeViewWidget::OnReplaceInstruction);\n+\n+  follow_branch_action->setEnabled(running &&\n+                                   IsBranchInstruction(PowerPC::HostRead_Instruction(addr)));\n+\n+  for (auto* action : {copy_address_action, copy_line_action, copy_hex_action, function_action,\n+                       ppc_action, insert_blr_action, insert_nop_action, replace_action})\n+    action->setEnabled(running);\n+\n+  for (auto* action : {symbol_rename_action, symbol_size_action, symbol_end_action})\n+    action->setEnabled(has_symbol);\n+\n+  menu->exec(QCursor::pos());\n+\n+  Update();\n+}\n+\n+void CodeViewWidget::OnCopyAddress()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+}\n+\n+void CodeViewWidget::OnCopyCode()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(\n+      QString::fromStdString(PowerPC::debug_interface.Disassemble(addr)));\n+}\n+\n+void CodeViewWidget::OnCopyFunction()\n+{\n+  const u32 address = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(address);\n+  if (symbol)\n+  {\n+    std::string text;\n+    text = text + symbol->name + "\\r\\n";', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:06:32Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518602'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518602'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 287, 'author_association': 'OWNER', 'position': 287, 'id': 169518602, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '`std::string text = symbol->name + "\\r\\n";`'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518705', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518705', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:07:25Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169518705'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169518705'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 169, 'author_association': 'OWNER', 'position': 169, 'id': 169518705, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (m_address == address)\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519275', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519275', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:12:33Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519275'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519275'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 337, 'author_association': 'OWNER', 'position': 337, 'id': 169519275, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```\r\n\r\nThis can also be moved above `sync_event`'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519375', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519375', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    PowerPC::CoreMode old_mode = PowerPC::GetMode();\n+    PowerPC::SetMode(PowerPC::CoreMode::Interpreter);\n+    PowerPC::breakpoints.ClearAllTemporary();\n+    CPU::StepOpcode(&sync_event);\n+    sync_event.WaitFor(std::chrono::milliseconds(20));\n+    PowerPC::SetMode(old_mode);\n+    Core::DisplayMessage(tr("Step successful!").toStdString(), 2000);\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+void CodeWidget::StepOver()\n+{\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:13:35Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519375'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519375'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 357, 'author_association': 'OWNER', 'position': 357, 'id': 169519375, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519416', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519416', 'diff_hunk': '@@ -0,0 +1,478 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+\n+#include <chrono>\n+\n+#include <QGridLayout>\n+#include <QGroupBox>\n+#include <QLineEdit>\n+#include <QListWidget>\n+#include <QSettings>\n+#include <QSplitter>\n+#include <QTableWidget>\n+#include <QWidget>\n+\n+#include "Common/Event.h"\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/Debugger_SymbolMap.h"\n+#include "Core/HW/CPU.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+#include "DolphinQt2/Settings.h"\n+\n+CodeWidget::CodeWidget(QWidget* parent) : QDockWidget(parent)\n+{\n+  setWindowTitle(tr("Code"));\n+  setAllowedAreas(Qt::AllDockWidgetAreas);\n+\n+  QSettings settings;\n+\n+  restoreGeometry(settings.value(QStringLiteral("codewidget/geometry")).toByteArray());\n+  setFloating(settings.value(QStringLiteral("codewidget/floating")).toBool());\n+\n+  connect(&Settings::Instance(), &Settings::CodeVisibilityChanged,\n+          [this](bool visible) { setHidden(!visible); });\n+\n+  connect(&Settings::Instance(), &Settings::DebugModeToggled,\n+          [this](bool enabled) { setHidden(!enabled || !Settings::Instance().IsCodeVisible()); });\n+\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, &CodeWidget::Update);\n+\n+  setHidden(!Settings::Instance().IsCodeVisible() || !Settings::Instance().IsDebugModeEnabled());\n+\n+  CreateWidgets();\n+  ConnectWidgets();\n+\n+  m_code_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/codesplitter")).toByteArray());\n+  m_box_splitter->restoreState(\n+      settings.value(QStringLiteral("codewidget/boxsplitter")).toByteArray());\n+\n+  Update();\n+}\n+\n+CodeWidget::~CodeWidget()\n+{\n+  QSettings settings;\n+\n+  settings.setValue(QStringLiteral("codewidget/geometry"), saveGeometry());\n+  settings.setValue(QStringLiteral("codewidget/floating"), isFloating());\n+  settings.setValue(QStringLiteral("codewidget/codesplitter"), m_code_splitter->saveState());\n+  settings.setValue(QStringLiteral("codewidget/boxplitter"), m_box_splitter->saveState());\n+}\n+\n+void CodeWidget::closeEvent(QCloseEvent*)\n+{\n+  Settings::Instance().SetCodeVisible(false);\n+}\n+\n+void CodeWidget::CreateWidgets()\n+{\n+  auto* layout = new QGridLayout;\n+\n+  m_search_address = new QLineEdit;\n+  m_search_symbols = new QLineEdit;\n+  m_code_view = new CodeViewWidget;\n+\n+  m_search_address->setPlaceholderText(tr("Search Address"));\n+  m_search_symbols->setPlaceholderText(tr("Filter Symbols"));\n+\n+  // Callstack\n+  auto* callstack_box = new QGroupBox(tr("Callstack"));\n+  auto* callstack_layout = new QVBoxLayout;\n+  m_callstack_list = new QListWidget;\n+\n+  callstack_box->setLayout(callstack_layout);\n+  callstack_layout->addWidget(m_callstack_list);\n+\n+  // Symbols\n+  auto* symbols_box = new QGroupBox(tr("Symbols"));\n+  auto* symbols_layout = new QVBoxLayout;\n+  m_symbols_list = new QListWidget;\n+\n+  symbols_box->setLayout(symbols_layout);\n+  symbols_layout->addWidget(m_symbols_list);\n+\n+  // Function calls\n+  auto* function_calls_box = new QGroupBox(tr("Function calls"));\n+  auto* function_calls_layout = new QVBoxLayout;\n+  m_function_calls_list = new QListWidget;\n+\n+  function_calls_box->setLayout(function_calls_layout);\n+  function_calls_layout->addWidget(m_function_calls_list);\n+\n+  // Function callers\n+  auto* function_callers_box = new QGroupBox(tr("Function callers"));\n+  auto* function_callers_layout = new QVBoxLayout;\n+  m_function_callers_list = new QListWidget;\n+\n+  function_callers_box->setLayout(function_callers_layout);\n+  function_callers_layout->addWidget(m_function_callers_list);\n+\n+  m_box_splitter = new QSplitter(Qt::Vertical);\n+\n+  m_box_splitter->addWidget(callstack_box);\n+  m_box_splitter->addWidget(symbols_box);\n+  m_box_splitter->addWidget(function_calls_box);\n+  m_box_splitter->addWidget(function_callers_box);\n+\n+  m_code_splitter = new QSplitter(Qt::Horizontal);\n+\n+  m_code_splitter->addWidget(m_box_splitter);\n+  m_code_splitter->addWidget(m_code_view);\n+\n+  layout->addWidget(m_search_address, 0, 0);\n+  layout->addWidget(m_search_symbols, 0, 1);\n+  layout->addWidget(m_code_splitter, 1, 0, -1, -1);\n+\n+  QWidget* widget = new QWidget(this);\n+  widget->setLayout(layout);\n+  setWidget(widget);\n+}\n+\n+void CodeWidget::ConnectWidgets()\n+{\n+  connect(m_search_address, &QLineEdit::textChanged, this, &CodeWidget::OnSearchAddress);\n+  connect(m_search_symbols, &QLineEdit::textChanged, this, &CodeWidget::OnSearchSymbols);\n+\n+  connect(m_symbols_list, &QListWidget::itemSelectionChanged, this, &CodeWidget::OnSelectSymbol);\n+  connect(m_callstack_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectCallstack);\n+  connect(m_function_calls_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCalls);\n+  connect(m_function_callers_list, &QListWidget::itemSelectionChanged, this,\n+          &CodeWidget::OnSelectFunctionCallers);\n+\n+  connect(m_code_view, &CodeViewWidget::SymbolsChanged, this, &CodeWidget::UpdateSymbols);\n+  connect(m_code_view, &CodeViewWidget::BreakpointsChanged, this,\n+          [this] { emit BreakpointsChanged(); });\n+}\n+\n+void CodeWidget::OnSearchAddress()\n+{\n+  bool good = true;\n+  u32 address = m_search_address->text().toUInt(&good, 16);\n+\n+  QPalette palette;\n+  QFont font;\n+\n+  if (!good && !m_search_address->text().isEmpty())\n+  {\n+    font.setBold(true);\n+    palette.setColor(QPalette::Text, Qt::red);\n+  }\n+\n+  m_search_address->setPalette(palette);\n+  m_search_address->setFont(font);\n+\n+  if (good)\n+    m_code_view->SetAddress(address);\n+\n+  Update();\n+}\n+\n+void CodeWidget::OnSearchSymbols()\n+{\n+  m_symbol_filter = m_search_symbols->text();\n+  UpdateSymbols();\n+}\n+\n+void CodeWidget::OnSelectSymbol()\n+{\n+  const auto items = m_symbols_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectCallstack()\n+{\n+  const auto items = m_callstack_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCalls()\n+{\n+  const auto items = m_function_calls_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::OnSelectFunctionCallers()\n+{\n+  const auto items = m_function_callers_list->selectedItems();\n+  if (items.isEmpty())\n+    return;\n+\n+  m_code_view->SetAddress(items[0]->data(Qt::UserRole).toUInt());\n+  Update();\n+}\n+\n+void CodeWidget::Update()\n+{\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(m_code_view->GetAddress());\n+\n+  UpdateCallstack();\n+  UpdateSymbols();\n+\n+  if (!symbol)\n+    return;\n+\n+  UpdateFunctionCalls(symbol);\n+  UpdateFunctionCallers(symbol);\n+\n+  m_code_view->Update();\n+  m_code_view->setFocus();\n+}\n+\n+void CodeWidget::UpdateCallstack()\n+{\n+  m_callstack_list->clear();\n+\n+  std::vector<Dolphin_Debugger::CallstackEntry> stack;\n+\n+  bool success = Dolphin_Debugger::GetCallstack(stack);\n+\n+  if (!success)\n+  {\n+    m_callstack_list->addItem(tr("Invalid callstack"));\n+    return;\n+  }\n+\n+  for (const auto& frame : stack)\n+  {\n+    auto* item =\n+        new QListWidgetItem(QString::fromStdString(frame.Name.substr(0, frame.Name.length() - 1)));\n+    item->setData(Qt::UserRole, frame.vAddress);\n+\n+    m_callstack_list->addItem(item);\n+  }\n+}\n+\n+void CodeWidget::UpdateSymbols()\n+{\n+  QString selection = m_symbols_list->selectedItems().isEmpty() ?\n+                          QStringLiteral("") :\n+                          m_symbols_list->selectedItems()[0]->text();\n+  m_symbols_list->clear();\n+\n+  for (const auto& symbol : g_symbolDB.Symbols())\n+  {\n+    QString name = QString::fromStdString(symbol.second.name);\n+\n+    auto* item = new QListWidgetItem(name);\n+    if (name == selection)\n+      item->setSelected(true);\n+\n+    // Disable non-function symbols as you can\'t do anything with them.\n+    if (symbol.second.type != Symbol::Type::Function)\n+      item->setFlags(Qt::NoItemFlags);\n+\n+    item->setData(Qt::UserRole, symbol.second.address);\n+\n+    if (name.indexOf(m_symbol_filter) != -1)\n+      m_symbols_list->addItem(item);\n+  }\n+\n+  m_symbols_list->sortItems();\n+}\n+\n+void CodeWidget::UpdateFunctionCalls(Symbol* symbol)\n+{\n+  m_function_calls_list->clear();\n+\n+  for (const auto& call : symbol->calls)\n+  {\n+    u32 addr = call.function;\n+    Symbol* call_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (call_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("> %s (%08x)", call_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_calls_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::UpdateFunctionCallers(Symbol* symbol)\n+{\n+  m_function_callers_list->clear();\n+\n+  for (const auto& caller : symbol->callers)\n+  {\n+    u32 addr = caller.callAddress;\n+    Symbol* caller_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+    if (caller_symbol)\n+    {\n+      auto* item = new QListWidgetItem(QString::fromStdString(\n+          StringFromFormat("< %s (%08x)", caller_symbol->name.c_str(), addr).c_str()));\n+      item->setData(Qt::UserRole, addr);\n+\n+      m_function_callers_list->addItem(item);\n+    }\n+  }\n+}\n+\n+void CodeWidget::Step()\n+{\n+  Common::Event sync_event;\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    PowerPC::CoreMode old_mode = PowerPC::GetMode();\n+    PowerPC::SetMode(PowerPC::CoreMode::Interpreter);\n+    PowerPC::breakpoints.ClearAllTemporary();\n+    CPU::StepOpcode(&sync_event);\n+    sync_event.WaitFor(std::chrono::milliseconds(20));\n+    PowerPC::SetMode(old_mode);\n+    Core::DisplayMessage(tr("Step successful!").toStdString(), 2000);\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+void CodeWidget::StepOver()\n+{\n+  if (CPU::IsStepping())\n+  {\n+    Core::SetState(Core::State::Running);\n+\n+    UGeckoInstruction inst = PowerPC::HostRead_Instruction(PC);\n+    if (inst.LK)\n+    {\n+      PowerPC::breakpoints.ClearAllTemporary();\n+      PowerPC::breakpoints.Add(PC + 4, true);\n+      CPU::EnableStepping(false);\n+      Core::DisplayMessage(tr("Step over in progress...").toStdString(), 2000);\n+    }\n+    else\n+    {\n+      Step();\n+    }\n+\n+    Core::SetState(Core::State::Paused);\n+    m_code_view->SetAddress(PC);\n+    Update();\n+  }\n+}\n+\n+// Returns true on a rfi, blr or on a bclr that evaluates to true.\n+static bool WillInstructionReturn(UGeckoInstruction inst)\n+{\n+  // Is a rfi instruction\n+  if (inst.hex == 0x4C000064u)\n+    return true;\n+  bool counter = (inst.BO_2 >> 2 & 1) != 0 || (CTR != 0) != ((inst.BO_2 >> 1 & 1) != 0);\n+  bool condition = inst.BO_2 >> 4 != 0 || GetCRBit(inst.BI_2) == (inst.BO_2 >> 3 & 1);\n+  bool isBclr = inst.OPCD_7 == 0b010011 && (inst.hex >> 1 & 0b10000) != 0;\n+  return isBclr && counter && condition && !inst.LK_3;\n+}\n+\n+void CodeWidget::StepOut()\n+{\n+  if (CPU::IsStepping())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.cpp', 'created_at': '2018-02-21T02:13:57Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519416'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519416'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 394, 'author_association': 'OWNER', 'position': 394, 'id': 169519416, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!CPU::IsStepping())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519530', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519530', 'diff_hunk': '@@ -0,0 +1,70 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#pragma once\n+\n+#include <QDockWidget>\n+#include <QString>\n+\n+#include "Core/PowerPC/PowerPC.h"', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeWidget.h', 'created_at': '2018-02-21T02:14:51Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519530'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519530'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 10, 'author_association': 'OWNER', 'position': 10, 'id': 169519530, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Does this need to be in the header?'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519767', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519767', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:16:54Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519767'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519767'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 209, 'author_association': 'OWNER', 'position': 209, 'id': 169519767, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': "this can be an `unsigned int`, Qt has a sane API and doesn't return unsigned long, like wx does."}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519844', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519844', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);\n+\n+  if (good && address <= std::numeric_limits<u32>::max())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:56Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:17:38Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519844'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519844'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 211, 'author_association': 'OWNER', 'position': 211, 'id': 169519844, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Because of the above, this can just be inverted to \r\n\r\n```cpp\r\nif (!good)\r\n{\r\n  QMessageBox::warning(this, tr("Error"), tr("Invalid RSO module address: %1").arg(text));\r\n  return;\r\n}\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519941', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519941', 'diff_hunk': '@@ -716,3 +797,177 @@ void MenuBar::OnReadOnlyModeChanged(bool read_only)\n {\n   m_recording_read_only->setChecked(read_only);\n }\n+\n+void MenuBar::ChangeDebugFont()\n+{\n+  bool okay;\n+  QFont font = QFontDialog::getFont(&okay, Settings::Instance().GetDebugFont(), this,\n+                                    tr("Pick a debug font"));\n+\n+  if (okay)\n+    Settings::Instance().SetDebugFont(font);\n+}\n+\n+void MenuBar::ClearSymbols()\n+{\n+  auto result = QMessageBox::warning(this, tr("Confirmation"),\n+                                     tr("Do you want to clear the list of symbol names?"),\n+                                     QMessageBox::Yes | QMessageBox::Cancel);\n+\n+  if (result == QMessageBox::Cancel)\n+    return;\n+\n+  g_symbolDB.Clear();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromAddress()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromSignatureDB()\n+{\n+  PPCAnalyst::FindFunctions(0x80000000, 0x81800000, &g_symbolDB);\n+  SignatureDB db(SignatureDB::HandlerType::DSY);\n+  if (db.Load(File::GetSysDirectory() + TOTALDB))\n+  {\n+    db.Apply(&g_symbolDB);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Generated symbol names from \'%1\'").arg(QString::fromStdString(TOTALDB)));\n+    db.List();\n+  }\n+  else\n+  {\n+    QMessageBox::critical(\n+        this, tr("Error"),\n+        tr("\'%1\' not found, no symbol names generated").arg(QString::fromStdString(TOTALDB)));\n+  }\n+\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::GenerateSymbolsFromRSO()\n+{\n+  QString text = QInputDialog::getText(this, tr("Input"), tr("Enter the RSO module address:"));\n+  bool good;\n+  unsigned long address = text.toUInt(&good, 16);\n+\n+  if (good && address <= std::numeric_limits<u32>::max())\n+  {\n+    RSOChainView rso_chain;\n+    if (rso_chain.Load(static_cast<u32>(address)))\n+    {\n+      rso_chain.Apply(&g_symbolDB);\n+      Host_NotifyMapLoaded();\n+    }\n+    else\n+    {\n+      QMessageBox::warning(this, tr("Error"), tr("Failed to load RSO module at %1").arg(text));\n+    }\n+  }\n+  else\n+  {\n+    QMessageBox::warning(this, tr("Error"), tr("Invalid RSO module address: %1").arg(text));\n+  }\n+}\n+\n+void MenuBar::LoadSymbolMap()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  bool map_exists = CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  if (!map_exists)\n+  {\n+    g_symbolDB.Clear();\n+    PPCAnalyst::FindFunctions(0x81300000, 0x81800000, &g_symbolDB);\n+    SignatureDB db(SignatureDB::HandlerType::DSY);\n+    if (db.Load(File::GetSysDirectory() + TOTALDB))\n+      db.Apply(&g_symbolDB);\n+    QMessageBox::warning(this, tr("Error"),\n+                         tr("\'%1\' not found, scanning for common functions instead")\n+                             .arg(QString::fromStdString(writable_map_file)));\n+  }\n+  else\n+  {\n+    g_symbolDB.LoadMap(existing_map_file);\n+    QMessageBox::information(\n+        this, tr("Information"),\n+        tr("Loaded symbols from \'%1\'").arg(QString::fromStdString(existing_map_file.c_str())));\n+  }\n+  HLE::PatchFunctions();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::SaveSymbolMap()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  g_symbolDB.SaveSymbolMap(writable_map_file);\n+}\n+\n+void MenuBar::LoadOtherSymbolMap()\n+{\n+  QString file = QFileDialog::getOpenFileName(this, tr("Load map file"),\n+                                              QString::fromStdString(File::GetUserPath(D_MAPS_IDX)),\n+                                              tr("Dolphin Map File (*.map)"));\n+\n+  if (!file.isEmpty())\n+  {\n+    g_symbolDB.LoadMap(file.toStdString());\n+  }\n+  HLE::PatchFunctions();\n+  Host_NotifyMapLoaded();\n+}\n+\n+void MenuBar::SaveSymbolMapAs()\n+{\n+  const std::string& title_id_str = SConfig::GetInstance().m_debugger_game_id;\n+  QString file = QFileDialog::getSaveFileName(\n+      this, tr("Save map file"),\n+      QString::fromStdString(File::GetUserPath(D_MAPS_IDX) + "/" + title_id_str + ".map"),\n+      tr("Dolphin Map File (*.map)"));\n+\n+  if (!file.isEmpty())\n+    g_symbolDB.SaveSymbolMap(file.toStdString());\n+}\n+\n+void MenuBar::SaveCode()\n+{\n+  std::string existing_map_file, writable_map_file;\n+  CBoot::FindMapFile(&existing_map_file, &writable_map_file);\n+\n+  const std::string path =\n+      writable_map_file.substr(0, writable_map_file.find_last_of(".")) + "_code.map";\n+  g_symbolDB.SaveCodeMap(path);\n+}\n+\n+void MenuBar::CreateSignatureFile()\n+{\n+  QString text = QInputDialog::getText(\n+      this, tr("Input"), tr("Only export symbols with prefix:\\n(Blank for all symbols)"));\n+\n+  if (!text.isEmpty())', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/MenuBar.cpp', 'created_at': '2018-02-21T02:18:33Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169519941'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169519941'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 306, 'author_association': 'OWNER', 'position': 306, 'id': 169519941, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (text.isEmpty())\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520005', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520005', 'diff_hunk': '@@ -6,6 +6,7 @@\n \n #include <memory>\n \n+#include <QFont>', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Settings.h', 'created_at': '2018-02-21T02:19:05Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520005'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520005'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 4, 'author_association': 'OWNER', 'position': 4, 'id': 169520005, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'This should be able to be a forward declaration.'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520156', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520156', 'diff_hunk': '@@ -0,0 +1,540 @@\n+// Copyright 2018 Dolphin Emulator Project\n+// Licensed under GPLv2+\n+// Refer to the license.txt file included.\n+\n+#include "DolphinQt2/Debugger/CodeViewWidget.h"\n+\n+#include <algorithm>\n+#include <cmath>\n+\n+#include <QApplication>\n+#include <QClipboard>\n+#include <QHeaderView>\n+#include <QInputDialog>\n+#include <QKeyEvent>\n+#include <QMenu>\n+#include <QResizeEvent>\n+#include <QScrollBar>\n+#include <QTableWidgetItem>\n+#include <QWheelEvent>\n+\n+#include "Common/StringUtil.h"\n+#include "Core/Core.h"\n+#include "Core/Debugger/PPCDebugInterface.h"\n+#include "Core/Host.h"\n+#include "Core/PowerPC/PPCAnalyst.h"\n+#include "Core/PowerPC/PPCSymbolDB.h"\n+#include "Core/PowerPC/PowerPC.h"\n+#include "DolphinQt2/Debugger/CodeWidget.h"\n+#include "DolphinQt2/QtUtils/ActionHelper.h"\n+#include "DolphinQt2/Settings.h"\n+\n+constexpr size_t VALID_BRANCH_LENGTH = 10;\n+\n+CodeViewWidget::CodeViewWidget()\n+{\n+  setColumnCount(5);\n+  setShowGrid(false);\n+  setContextMenuPolicy(Qt::CustomContextMenu);\n+  verticalScrollBar()->setHidden(true);\n+\n+  for (int i = 0; i < columnCount(); i++)\n+  {\n+    horizontalHeader()->setSectionResizeMode(i, i == 0 ? QHeaderView::Fixed :\n+                                                         QHeaderView::ResizeToContents);\n+  }\n+\n+  verticalHeader()->hide();\n+  horizontalHeader()->hide();\n+  horizontalHeader()->setStretchLastSection(true);\n+\n+  setFont(Settings::Instance().GetDebugFont());\n+\n+  Update();\n+\n+  horizontalHeader()->resizeSection(0, 32);\n+\n+  connect(this, &CodeViewWidget::itemClicked, this, &CodeViewWidget::OnClick);\n+  connect(this, &CodeViewWidget::itemDoubleClicked, this, &CodeViewWidget::OnDoubleClick);\n+  connect(this, &CodeViewWidget::customContextMenuRequested, this, &CodeViewWidget::OnContextMenu);\n+  connect(&Settings::Instance(), &Settings::DebugFontChanged, this, &QWidget::setFont);\n+  connect(&Settings::Instance(), &Settings::EmulationStateChanged, this, [this] {\n+    m_address = PC;\n+    Update();\n+  });\n+}\n+\n+void CodeViewWidget::Update()\n+{\n+  if (m_updating)\n+    return;\n+\n+  m_updating = true;\n+\n+  clearSelection();\n+  if (rowCount() == 0)\n+    setRowCount(1);\n+\n+  // Calculate (roughly) how many rows will fit in our table\n+  int rows = std::round((height() / static_cast<float>(rowHeight(0))) - 0.25);\n+\n+  setRowCount(rows);\n+\n+  u32 pc = PowerPC::ppcState.pc;\n+\n+  if (PowerPC::debug_interface.IsBreakpoint(pc))\n+    Core::SetState(Core::State::Paused);\n+\n+  for (int i = 0; i < rowCount(); i++)\n+  {\n+    u32 addr = m_address - ((rowCount() / 2) * 4) + i * 4;\n+    u32 color = PowerPC::debug_interface.GetColor(addr);\n+    auto* bp_item = new QTableWidgetItem;\n+    auto* addr_item = new QTableWidgetItem(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+\n+    std::string disas = PowerPC::debug_interface.Disassemble(addr);\n+    auto split = disas.find(\'\\t\');\n+\n+    std::string ins = (split == std::string::npos ? disas : disas.substr(0, split));\n+    std::string param = (split == std::string::npos ? "" : disas.substr(split + 1));\n+    std::string desc = PowerPC::debug_interface.GetDescription(addr);\n+\n+    auto* ins_item = new QTableWidgetItem(QString::fromStdString(ins));\n+    auto* param_item = new QTableWidgetItem(QString::fromStdString(param));\n+    auto* description_item = new QTableWidgetItem(QString::fromStdString(desc));\n+\n+    // look for hex strings to decode branches\n+    std::string hex_str;\n+    size_t pos = param.find("0x");\n+    if (pos != std::string::npos)\n+    {\n+      hex_str = param.substr(pos);\n+    }\n+\n+    if (hex_str.length() == VALID_BRANCH_LENGTH && desc != "---")\n+    {\n+      description_item->setText(tr("--> %1").arg(QString::fromStdString(desc)));\n+\n+      description_item->setForeground(Qt::magenta);\n+    }\n+\n+    for (auto* item : {bp_item, addr_item, ins_item, param_item, description_item})\n+    {\n+      item->setFlags(Qt::ItemIsEnabled);\n+      item->setData(Qt::UserRole, addr);\n+\n+      if (color != 0xFFFFFF)\n+        item->setBackground(QColor(color).darker(200));\n+\n+      if (addr == pc && item != bp_item)\n+      {\n+        item->setBackground(Qt::darkGreen);\n+      }\n+\n+      if (ins == "blr")\n+        item->setForeground(Qt::darkGreen);\n+    }\n+\n+    if (PowerPC::debug_interface.IsBreakpoint(addr))\n+    {\n+      bp_item->setBackground(Qt::red);\n+    }\n+\n+    setItem(i, 0, bp_item);\n+    setItem(i, 1, addr_item);\n+    setItem(i, 2, ins_item);\n+    setItem(i, 3, param_item);\n+    setItem(i, 4, description_item);\n+\n+    if (addr == GetAddress())\n+    {\n+      addr_item->setFlags(addr_item->flags() | Qt::ItemIsSelectable);\n+      addr_item->setSelected(true);\n+    }\n+  }\n+\n+  g_symbolDB.FillInCallers();\n+\n+  repaint();\n+  m_updating = false;\n+}\n+\n+u32 CodeViewWidget::GetAddress() const\n+{\n+  return m_address;\n+}\n+\n+void CodeViewWidget::SetAddress(u32 address)\n+{\n+  if (m_address != address)\n+  {\n+    m_address = address;\n+    Update();\n+  }\n+}\n+\n+void CodeViewWidget::ReplaceAddress(u32 address, bool blr)\n+{\n+  auto found = std::find_if(m_repl_list.begin(), m_repl_list.end(),\n+                            [address](ReplStruct r) { return r.address == address; });\n+\n+  if (found != m_repl_list.end())\n+  {\n+    PowerPC::debug_interface.WriteExtraMemory(0, (*found).old_value, address);\n+    m_repl_list.erase(found);\n+  }\n+  else\n+  {\n+    ReplStruct repl;\n+\n+    repl.address = address;\n+    repl.old_value = PowerPC::debug_interface.ReadInstruction(address);\n+\n+    m_repl_list.push_back(repl);\n+\n+    PowerPC::debug_interface.Patch(address, blr ? 0x60000000 : 0x4e800020);\n+  }\n+\n+  Update();\n+}\n+\n+static bool IsBranchInstruction(UGeckoInstruction inst)\n+{\n+  return true;\n+}\n+\n+void CodeViewWidget::OnContextMenu()\n+{\n+  if (m_context_item == nullptr)\n+    m_context_item = selectedItems()[0];\n+\n+  QMenu* menu = new QMenu(this);\n+\n+  bool running = Core::GetState() != Core::State::Uninitialized;\n+\n+  const u32 addr = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  bool has_symbol = g_symbolDB.GetSymbolFromAddr(addr);\n+\n+  auto* follow_branch_action =\n+      AddAction(menu, tr("Follow &branch"), this, &CodeViewWidget::OnFollowBranch);\n+\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("&Copy address"), this, &CodeViewWidget::OnCopyAddress);\n+  auto* copy_address_action =\n+      AddAction(menu, tr("Copy &function"), this, &CodeViewWidget::OnCopyFunction);\n+  auto* copy_line_action =\n+      AddAction(menu, tr("Copy code &line"), this, &CodeViewWidget::OnCopyCode);\n+  auto* copy_hex_action = AddAction(menu, tr("Copy &hex"), this, &CodeViewWidget::OnCopyHex);\n+  menu->addSeparator();\n+\n+  auto* symbol_rename_action =\n+      AddAction(menu, tr("&Rename symbol"), this, &CodeViewWidget::OnRenameSymbol);\n+  auto* symbol_size_action =\n+      AddAction(menu, tr("Set symbol &size"), this, &CodeViewWidget::OnSetSymbolSize);\n+  auto* symbol_end_action =\n+      AddAction(menu, tr("Set symbol &end address"), this, &CodeViewWidget::OnSetSymbolEndAddress);\n+  menu->addSeparator();\n+\n+  AddAction(menu, tr("Run &To Here"), this, &CodeViewWidget::OnRunToHere);\n+  auto* function_action =\n+      AddAction(menu, tr("&Add function"), this, &CodeViewWidget::OnAddFunction);\n+  auto* ppc_action = AddAction(menu, tr("PPC vs x86"), this, &CodeViewWidget::OnPPCComparison);\n+  auto* insert_blr_action = AddAction(menu, tr("&Insert blr"), this, &CodeViewWidget::OnInsertBLR);\n+  auto* insert_nop_action = AddAction(menu, tr("Insert &nop"), this, &CodeViewWidget::OnInsertNOP);\n+  auto* replace_action =\n+      AddAction(menu, tr("Re&place instruction"), this, &CodeViewWidget::OnReplaceInstruction);\n+\n+  follow_branch_action->setEnabled(running &&\n+                                   IsBranchInstruction(PowerPC::HostRead_Instruction(addr)));\n+\n+  for (auto* action : {copy_address_action, copy_line_action, copy_hex_action, function_action,\n+                       ppc_action, insert_blr_action, insert_nop_action, replace_action})\n+    action->setEnabled(running);\n+\n+  for (auto* action : {symbol_rename_action, symbol_size_action, symbol_end_action})\n+    action->setEnabled(has_symbol);\n+\n+  menu->exec(QCursor::pos());\n+\n+  Update();\n+}\n+\n+void CodeViewWidget::OnCopyAddress()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(QStringLiteral("%1").arg(addr, 8, 16, QLatin1Char(\'0\')));\n+}\n+\n+void CodeViewWidget::OnCopyCode()\n+{\n+  const u32 addr = selectedItems()[0]->data(Qt::UserRole).toUInt();\n+\n+  QApplication::clipboard()->setText(\n+      QString::fromStdString(PowerPC::debug_interface.Disassemble(addr)));\n+}\n+\n+void CodeViewWidget::OnCopyFunction()\n+{\n+  const u32 address = m_context_item->data(Qt::UserRole).toUInt();\n+\n+  Symbol* symbol = g_symbolDB.GetSymbolFromAddr(address);\n+  if (symbol)', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Debugger/CodeViewWidget.cpp', 'created_at': '2018-02-21T02:20:29Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520156'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520156'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 284, 'author_association': 'OWNER', 'position': 284, 'id': 169520156, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': '```cpp\r\nif (!symbol)\r\n  return;\r\n```'}, {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520726', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520726', 'diff_hunk': '@@ -278,11 +279,13 @@ void MappingWindow::SetMappingType(MappingWindow::Type type)\n     widget = new HotkeyGeneral(this);\n     AddWidget(tr("General"), widget);\n     AddWidget(tr("TAS Tools"), new HotkeyTAS(this));\n+    AddWidget(tr("Debugging"), new HotkeyDebugging(this));\n     AddWidget(tr("Wii and Wii Remote"), new HotkeyWii(this));\n     AddWidget(tr("Graphics"), new HotkeyGraphics(this));\n     AddWidget(tr("3D"), new Hotkey3D(this));\n     AddWidget(tr("Save and Load State"), new HotkeyStates(this));\n     setWindowTitle(tr("Hotkey Settings"));\n+', 'pull_request_review_id': 98056927, 'original_commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'updated_at': '2018-02-21T02:25:57Z', 'path': 'Source/Core/DolphinQt2/Config/Mapping/MappingWindow.cpp', 'created_at': '2018-02-21T02:25:26Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169520726'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386#discussion_r169520726'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}}, 'commit_id': '37eb33694808abefac388155beaac9f82fccdb21', 'original_position': 18, 'author_association': 'OWNER', 'position': 18, 'id': 169520726, 'user': {'starred_url': 'https://api.github.com/users/lioncash/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/lioncash', 'followers_url': 'https://api.github.com/users/lioncash/followers', 'login': 'lioncash', 'repos_url': 'https://api.github.com/users/lioncash/repos', 'gists_url': 'https://api.github.com/users/lioncash/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/lioncash/events{/privacy}', 'organizations_url': 'https://api.github.com/users/lioncash/orgs', 'received_events_url': 'https://api.github.com/users/lioncash/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/712067?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/lioncash/following{/other_user}', 'id': 712067, 'subscriptions_url': 'https://api.github.com/users/lioncash/subscriptions', 'html_url': 'https://github.com/lioncash'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'body': 'Unnecessary newline?'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Qt/Debugger: Implement "Code" widget', 'action': 'edited'}
2018-02-20T19:26:48.009318	{'state': 'approved', 'type': 'gh_pull_request_review', 'author': 'Helios747', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6389#pullrequestreview-97957223', 'pr_id': 6389, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Fix emulated Wiimotes', 'action': 'submitted'}
2018-02-20T15:19:27.287193	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'mahdihijazi', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#pullrequestreview-97863679', 'pr_id': 6282, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169351361', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351361', 'diff_hunk': '@@ -74,6 +78,16 @@\n             android:exported="false">\n         </provider>\n \n+        <provider\n+            android:name="android.support.v4.content.FileProvider"\n+            android:authorities="${applicationId}.filesprovider"', 'pull_request_review_id': 97863679, 'original_commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'updated_at': '2018-02-20T15:19:25Z', 'path': 'Source/Android/app/src/main/AndroidManifest.xml', 'created_at': '2018-02-20T15:19:25Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169351361'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351361'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282'}}, 'in_reply_to_id': 169348979, 'commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'original_position': 34, 'author_association': 'MEMBER', 'position': 34, 'id': 169351361, 'user': {'starred_url': 'https://api.github.com/users/mahdihijazi/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mahdihijazi', 'followers_url': 'https://api.github.com/users/mahdihijazi/followers', 'login': 'mahdihijazi', 'repos_url': 'https://api.github.com/users/mahdihijazi/repos', 'gists_url': 'https://api.github.com/users/mahdihijazi/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mahdihijazi/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mahdihijazi/orgs', 'received_events_url': 'https://api.github.com/users/mahdihijazi/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/836892?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mahdihijazi/following{/other_user}', 'id': 836892, 'subscriptions_url': 'https://api.github.com/users/mahdihijazi/subscriptions', 'html_url': 'https://github.com/mahdihijazi'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282', 'body': 'Did you receive any bug report regarding this? What make you come back and check it :)'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': '[Android] Replace current file browser', 'action': 'submitted'}
2018-02-20T15:18:33.870461	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'mahdihijazi', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#pullrequestreview-97863331', 'pr_id': 6282, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169351068', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351068', 'diff_hunk': '@@ -74,6 +78,16 @@\n             android:exported="false">\n         </provider>\n \n+        <provider\n+            android:name="android.support.v4.content.FileProvider"\n+            android:authorities="${applicationId}.filesprovider"', 'pull_request_review_id': 97863331, 'original_commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'updated_at': '2018-02-20T15:18:32Z', 'path': 'Source/Android/app/src/main/AndroidManifest.xml', 'created_at': '2018-02-20T15:18:32Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169351068'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169351068'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282'}}, 'in_reply_to_id': 169348979, 'commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'original_position': 34, 'author_association': 'MEMBER', 'position': 34, 'id': 169351068, 'user': {'starred_url': 'https://api.github.com/users/mahdihijazi/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mahdihijazi', 'followers_url': 'https://api.github.com/users/mahdihijazi/followers', 'login': 'mahdihijazi', 'repos_url': 'https://api.github.com/users/mahdihijazi/repos', 'gists_url': 'https://api.github.com/users/mahdihijazi/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mahdihijazi/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mahdihijazi/orgs', 'received_events_url': 'https://api.github.com/users/mahdihijazi/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/836892?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mahdihijazi/following{/other_user}', 'id': 836892, 'subscriptions_url': 'https://api.github.com/users/mahdihijazi/subscriptions', 'html_url': 'https://github.com/mahdihijazi'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282', 'body': "hmm..probably you are right but I wonder why I didn't see it breaking during the development 🤔 "}], 'repo': 'dolphin-emu/dolphin', 'pr_title': '[Android] Replace current file browser', 'action': 'submitted'}
2018-02-20T15:12:28.532806	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6282#pullrequestreview-97860840', 'pr_id': 6282, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169348979', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169348979', 'diff_hunk': '@@ -74,6 +78,16 @@\n             android:exported="false">\n         </provider>\n \n+        <provider\n+            android:name="android.support.v4.content.FileProvider"\n+            android:authorities="${applicationId}.filesprovider"', 'pull_request_review_id': 97860840, 'original_commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'updated_at': '2018-02-20T15:12:27Z', 'path': 'Source/Android/app/src/main/AndroidManifest.xml', 'created_at': '2018-02-20T15:12:26Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169348979'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6282#discussion_r169348979'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282'}}, 'commit_id': '409ae4c444c6c870f2aceabfe2328c2ac5d7c656', 'original_position': 34, 'author_association': 'MEMBER', 'position': 34, 'id': 169348979, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6282', 'body': 'I think this breaks debug builds. They have a postfix on the application id. But we may just drop this postfix instead...'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': '[Android] Replace current file browser', 'action': 'submitted'}
2018-02-19T17:22:17.674023	{'state': 'approved', 'type': 'gh_pull_request_review', 'author': 'BhaaLseN', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6388#pullrequestreview-97614013', 'pr_id': 6388, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Consolidate ec_wii functions into IOSC', 'action': 'submitted'}
2018-02-19T14:26:05.031613	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6316#pullrequestreview-97559469', 'pr_id': 6316, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169089829', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6316#discussion_r169089829', 'diff_hunk': '@@ -48,24 +49,95 @@ void SetScissor()\n   const int xoff = bpmem.scissorOffset.x * 2;\n   const int yoff = bpmem.scissorOffset.y * 2;\n \n-  EFBRectangle rc(bpmem.scissorTL.x - xoff, bpmem.scissorTL.y - yoff, bpmem.scissorBR.x - xoff + 1,\n-                  bpmem.scissorBR.y - yoff + 1);\n+  EFBRectangle native_rc(bpmem.scissorTL.x - xoff, bpmem.scissorTL.y - yoff,\n+                         bpmem.scissorBR.x - xoff + 1, bpmem.scissorBR.y - yoff + 1);\n+\n+  if (native_rc.left < 0)', 'pull_request_review_id': 97559469, 'original_commit_id': '544f43e02a44abaada67d25bbe698601fe1726e3', 'updated_at': '2018-02-19T14:26:03Z', 'path': 'Source/Core/VideoCommon/BPFunctions.cpp', 'created_at': '2018-02-19T14:26:03Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/169089829'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6316#discussion_r169089829'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6316'}}, 'commit_id': '544f43e02a44abaada67d25bbe698601fe1726e3', 'original_position': 17, 'author_association': 'MEMBER', 'position': 17, 'id': 169089829, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6316', 'body': 'small nitpick, but IMO max/min is the cleaner core.'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Move guest viewport conversion to VideoCommon', 'action': 'submitted'}
2018-02-16T19:00:29.912373	{'state': 'approved', 'type': 'gh_pull_request_review', 'author': 'mahdihijazi', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6225#pullrequestreview-97282649', 'pr_id': 6225, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Android: Implement user game-specific settings overrides.', 'action': 'submitted'}
2018-02-16T04:15:39.517647	{'state': 'changes_requested', 'type': 'gh_pull_request_review', 'author': 'Helios747', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6381#pullrequestreview-97079891', 'pr_id': 6381, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Qt: Misc improvements for JMC47', 'action': 'submitted'}
2018-02-16T02:02:50.434552	{'state': 'approved', 'type': 'gh_pull_request_review', 'author': 'MayImilae', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6362#pullrequestreview-97067987', 'pr_id': 6362, 'source': 'ghhookparser', 'comments': [], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Qt/Mapping: Implement indicators', 'action': 'submitted'}
2018-02-15T20:36:56.237138	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'iwubcode', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96997160', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168600597', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168600597', 'diff_hunk': '@@ -101,15 +107,21 @@ void PSTextureEncoder::Encode(u8* dst, const EFBCopyParams& params, u32 native_w\n     encode_params.SrcTop = src_rect.top;\n     encode_params.DestWidth = native_width;\n     encode_params.ScaleFactor = scale_by_half ? 2 : 1;\n-    encode_params.y_scale = params.y_scale;\n+    encode_params.y_scale = y_scale;\n+    encode_params.gamma_rcp = 1.0f / gamma;\n+    encode_params.clamp_top = clamp_top ? src_rect.top / float(EFB_HEIGHT) : 0.0f;\n+    encode_params.clamp_bottom = clamp_bottom ? src_rect.bottom / float(EFB_HEIGHT) : 0.0f;\n+    for (size_t i = 0; i < filter_coefficients.size(); i++)\n+      encode_params.filter_coefficients[i] = filter_coefficients[i];', 'pull_request_review_id': 96997160, 'original_commit_id': '814633f0af943917a9c29261865058131ef940cc', 'updated_at': '2018-02-15T20:36:54Z', 'path': 'Source/Core/VideoBackends/D3D/PSTextureEncoder.cpp', 'created_at': '2018-02-15T20:36:54Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168600597'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168600597'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168377953, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 38, 'author_association': 'MEMBER', 'position': 38, 'id': 168600597, 'user': {'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'login': 'iwubcode', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'avatar_url': 'https://avatars1.githubusercontent.com/u/15224722?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'id': 15224722, 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'html_url': 'https://github.com/iwubcode'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': "Thanks that is what I expected but wasn't sure.  It makes sense, just rather unfortunate for those trying to understand the code later on when not in the PR.  But that's a pretty common occurrence in Dolphin code so it's fine I guess!"}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}
2018-02-15T15:19:53.035348	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6326#pullrequestreview-96885037', 'pr_id': 6326, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168506963', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6326#discussion_r168506963', 'diff_hunk': "@@ -819,6 +828,65 @@ void RunAsCPUThread(std::function<void()> function)\n     PauseAndLock(false, was_unpaused);\n }\n \n+void RunOnCPUThread(std::function<void()> function, bool wait_for_completion)\n+{\n+  // If the CPU thread is not running, assume there is no active CPU thread we can race against.\n+  // Therefore, we can safely exeucte the callback on the calling thread. TODO: Is this true?\n+  if (!IsRunning() || CPU::IsStepping() || IsCPUThread())\n+  {\n+    function();\n+    return;\n+  }\n+\n+  // We create per-call events so that multiple threads can call this function concurrently.\n+  std::unique_ptr<Common::Event> wait_event;\n+\n+  // Queue the job function.\n+  s_cpu_thread_jobs_lock.lock();\n+  if (wait_for_completion)\n+  {\n+    // Trigger the event after executing the function.\n+    wait_event = std::make_unique<Common::Event>();\n+    s_cpu_thread_jobs.push([&wait_event, &function]() {\n+      function();\n+      wait_event->Set();\n+    });\n+  }\n+  else\n+  {\n+    // Push the function on the queue directly, since we don't care when it executes.\n+    s_cpu_thread_jobs.push(function);\n+  }\n+\n+  // Don't hold the lock while scheduling the event, otherwise we could deadlock.\n+  // Worst case here is we execute the event function twice, which doesn't matter.\n+  s_cpu_thread_jobs_lock.unlock();\n+  CoreTiming::ScheduleEvent(0, s_cpu_thread_job_event, 0, CoreTiming::FromThread::NON_CPU);\n+\n+  // If we're waiting for completion, block until the event fires.\n+  if (wait_for_completion)\n+  {\n+    // Periodically yield to the UI thread, so we don't deadlock.\n+    // TODO: This should check if the caller is the UI thread.\n+    while (!wait_event->WaitFor(std::chrono::milliseconds(100)))\n+      Host_YieldToUI();", 'pull_request_review_id': 96885037, 'original_commit_id': '3c1b0fdba067701298399f9c97f8adbb3c4ff57f', 'updated_at': '2018-02-15T15:19:51Z', 'path': 'Source/Core/Core/Core.cpp', 'created_at': '2018-02-15T15:19:51Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168506963'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6326#discussion_r168506963'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6326'}}, 'commit_id': '3c1b0fdba067701298399f9c97f8adbb3c4ff57f', 'original_position': 78, 'author_association': 'MEMBER', 'position': 78, 'id': 168506963, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6326', 'body': 'Or just call a generic callback instead?'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Support asynchronously executing functions on the CPU thread', 'action': 'submitted'}
2018-02-15T13:08:32.811796	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'stenzek', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96839556', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168469584', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168469584', 'diff_hunk': '@@ -261,6 +265,27 @@ void TextureCache::CopyEFBToCacheEntry(TCacheEntry* entry, bool is_depth_copy,\n   else\n     D3D::SetPointCopySampler();\n \n+  struct PixelConstants\n+  {\n+    float filter_coefficients[3];\n+    float gamma_rcp;\n+    float clamp_top;\n+    float clamp_bottom;\n+    float pixel_height;\n+    u32 padding;\n+  };\n+  PixelConstants constants;\n+  for (size_t i = 0; i < filter_coefficients.size(); i++)\n+    constants.filter_coefficients[i] = filter_coefficients[i] / 64.0f;', 'pull_request_review_id': 96839556, 'original_commit_id': '814633f0af943917a9c29261865058131ef940cc', 'updated_at': '2018-02-15T13:08:31Z', 'path': 'Source/Core/VideoBackends/D3D/TextureCache.cpp', 'created_at': '2018-02-15T13:08:31Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168469584'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168469584'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168377599, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 86, 'author_association': 'MEMBER', 'position': 86, 'id': 168469584, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': "Ah, so if I'm understanding this right, 0.6*8.0+0.6*8.0+0.6*0.8 will give the same results as (0.6+0.6+0.6) -> 0.8*0.8 regardless of the intermediate precision?"}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}
2018-02-15T13:03:16.550368	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96838173', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168468550', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168468550', 'diff_hunk': '@@ -96,46 +121,123 @@ static void WriteSwizzler(char*& p, EFBCopyFormat format, APIType ApiType)\n   WRITE(p, "  val = int4(val.r >> 3, val.g >> 2, val.b >> 3, 1);\\n");\n   WRITE(p, "  return float4(val) / float4(31.0, 63.0, 31.0, 1.0);\\n");\n   WRITE(p, "}\\n");\n+}\n \n-  int blkW = TexDecoder_GetEFBCopyBlockWidthInTexels(format);\n-  int blkH = TexDecoder_GetEFBCopyBlockHeightInTexels(format);\n-  int samples = GetEncodedSampleCount(format);\n+static void WriteSampleFunction(char*& p, const EFBCopyParams& params, APIType ApiType)\n+{\n+  auto WriteSampleOp = [&](int yoffset) {\n+    if (!params.depth)\n+    {\n+      switch (params.efb_format)\n+      {\n+      case PEControl::RGB8_Z24:\n+        WRITE(p, "RGBA8ToRGB8(");\n+        break;\n+      case PEControl::RGBA6_Z24:\n+        WRITE(p, "RGBA8ToRGBA6(");\n+        break;\n+      case PEControl::RGB565_Z16:\n+        WRITE(p, "RGBA8ToRGB565(");\n+        break;\n+      default:\n+        WRITE(p, "(");\n+        break;\n+      }\n+    }\n+    else\n+    {\n+      // Handle D3D depth inversion.\n+      if (ApiType == APIType::D3D || ApiType == APIType::Vulkan)\n+        WRITE(p, "1.0 - (");\n+      else\n+        WRITE(p, "(");\n+    }\n \n-  if (ApiType == APIType::OpenGL)\n-  {\n-    WRITE(p, "#define samp0 samp9\\n");\n-    WRITE(p, "SAMPLER_BINDING(9) uniform sampler2DArray samp0;\\n");\n+    if (ApiType == APIType::OpenGL || ApiType == APIType::Vulkan)\n+      WRITE(p, "texture(samp0, float3(");\n+    else\n+      WRITE(p, "Tex0.Sample(samp0, float3(");\n \n-    WRITE(p, "FRAGMENT_OUTPUT_LOCATION(0) out vec4 ocol0;\\n");\n-    WRITE(p, "void main()\\n");\n-    WRITE(p, "{\\n"\n-             "  int2 sampleUv;\\n"\n-             "  int2 uv1 = int2(gl_FragCoord.xy);\\n");\n+    WRITE(p, "uv.x + xoffset * pixel_size.x, ");\n+\n+    // Reverse the direction for OpenGL, since positive numbers are distance from the bottom row.\n+    if (yoffset != 0)\n+    {\n+      if (ApiType == APIType::OpenGL)\n+        WRITE(p, "clamp(uv.y - float(%d) * pixel_size.y, clamp_tb.x, clamp_tb.y)", yoffset);\n+      else\n+        WRITE(p, "clamp(uv.y + float(%d) * pixel_size.y, clamp_tb.x, clamp_tb.y)", yoffset);\n+    }\n+    else\n+    {\n+      WRITE(p, "uv.y");\n+    }\n+\n+    WRITE(p, ", 0.0)))");\n+  };\n+\n+  WRITE(p, "float4 SampleEFB(float2 uv, float2 pixel_size, int xoffset)\\n");\n+  WRITE(p, "{\\n");\n+\n+  // Don\'t apply the copy filter to depth copies.\n+  // TODO: Verify this behavior on hardware.\n+  if (!params.depth)\n+  {\n+    WRITE(p, "  float4 prev_row = ");\n+    WriteSampleOp(-1);\n+    WRITE(p, ";\\n");\n+    WRITE(p, "  float4 current_row = ");\n+    WriteSampleOp(0);\n+    WRITE(p, ";\\n");\n+    WRITE(p, "  float4 next_row = ");\n+    WriteSampleOp(1);\n+    WRITE(p, ";\\n");\n+    WRITE(\n+        p,\n+        "  float3 col = float3(clamp((int3(prev_row.rgb * 255.0) * filter_coefficients[0] +\\n"\n+        "                             int3(current_row.rgb * 255.0) * filter_coefficients[1] +\\n"\n+        "                             int3(next_row.rgb * 255.0) * filter_coefficients[2]) / 64,\\n"', 'pull_request_review_id': 96838173, 'original_commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'updated_at': '2018-02-15T13:03:15Z', 'path': 'Source/Core/VideoCommon/TextureConversionShader.cpp', 'created_at': '2018-02-15T13:03:14Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168468550'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168468550'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168466599, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 145, 'author_association': 'MEMBER', 'position': 145, 'id': 168468550, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': 'It makes a huge difference with negative numbers in mind. To be honest, we likely should clamp before the shift as well...'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}
2018-02-15T12:59:46.768876	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'degasus', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96837324', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467846', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467846', 'diff_hunk': '@@ -261,6 +265,27 @@ void TextureCache::CopyEFBToCacheEntry(TCacheEntry* entry, bool is_depth_copy,\n   else\n     D3D::SetPointCopySampler();\n \n+  struct PixelConstants\n+  {\n+    float filter_coefficients[3];\n+    float gamma_rcp;\n+    float clamp_top;\n+    float clamp_bottom;\n+    float pixel_height;\n+    u32 padding;\n+  };\n+  PixelConstants constants;\n+  for (size_t i = 0; i < filter_coefficients.size(); i++)\n+    constants.filter_coefficients[i] = filter_coefficients[i] / 64.0f;', 'pull_request_review_id': 96837324, 'original_commit_id': '814633f0af943917a9c29261865058131ef940cc', 'updated_at': '2018-02-15T12:59:45Z', 'path': 'Source/Core/VideoBackends/D3D/TextureCache.cpp', 'created_at': '2018-02-15T12:59:45Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467846'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467846'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168377599, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 86, 'author_association': 'MEMBER', 'position': 86, 'id': 168467846, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': 'There is no scaling by 64 in fixed point format, this is just an reinterpretation of the data. So we have to talk about the truncation instead. If you already implement the 6*8 bit multiplications, you may as well add the accumulation with the same precision. So I vote for the full precisition convolution and the 6 bit shift afterwards.'}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}
2018-02-15T12:58:09.672860	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'stenzek', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96836928', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467489', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467489', 'diff_hunk': '@@ -96,46 +121,123 @@ static void WriteSwizzler(char*& p, EFBCopyFormat format, APIType ApiType)\n   WRITE(p, "  val = int4(val.r >> 3, val.g >> 2, val.b >> 3, 1);\\n");\n   WRITE(p, "  return float4(val) / float4(31.0, 63.0, 31.0, 1.0);\\n");\n   WRITE(p, "}\\n");\n+}\n \n-  int blkW = TexDecoder_GetEFBCopyBlockWidthInTexels(format);\n-  int blkH = TexDecoder_GetEFBCopyBlockHeightInTexels(format);\n-  int samples = GetEncodedSampleCount(format);\n+static void WriteSampleFunction(char*& p, const EFBCopyParams& params, APIType ApiType)\n+{\n+  auto WriteSampleOp = [&](int yoffset) {\n+    if (!params.depth)\n+    {\n+      switch (params.efb_format)\n+      {\n+      case PEControl::RGB8_Z24:\n+        WRITE(p, "RGBA8ToRGB8(");\n+        break;\n+      case PEControl::RGBA6_Z24:\n+        WRITE(p, "RGBA8ToRGBA6(");\n+        break;\n+      case PEControl::RGB565_Z16:\n+        WRITE(p, "RGBA8ToRGB565(");\n+        break;\n+      default:\n+        WRITE(p, "(");\n+        break;\n+      }\n+    }\n+    else\n+    {\n+      // Handle D3D depth inversion.\n+      if (ApiType == APIType::D3D || ApiType == APIType::Vulkan)\n+        WRITE(p, "1.0 - (");\n+      else\n+        WRITE(p, "(");\n+    }\n \n-  if (ApiType == APIType::OpenGL)\n-  {\n-    WRITE(p, "#define samp0 samp9\\n");\n-    WRITE(p, "SAMPLER_BINDING(9) uniform sampler2DArray samp0;\\n");\n+    if (ApiType == APIType::OpenGL || ApiType == APIType::Vulkan)\n+      WRITE(p, "texture(samp0, float3(");\n+    else\n+      WRITE(p, "Tex0.Sample(samp0, float3(");\n \n-    WRITE(p, "FRAGMENT_OUTPUT_LOCATION(0) out vec4 ocol0;\\n");\n-    WRITE(p, "void main()\\n");\n-    WRITE(p, "{\\n"\n-             "  int2 sampleUv;\\n"\n-             "  int2 uv1 = int2(gl_FragCoord.xy);\\n");\n+    WRITE(p, "uv.x + xoffset * pixel_size.x, ");\n+\n+    // Reverse the direction for OpenGL, since positive numbers are distance from the bottom row.\n+    if (yoffset != 0)\n+    {\n+      if (ApiType == APIType::OpenGL)\n+        WRITE(p, "clamp(uv.y - float(%d) * pixel_size.y, clamp_tb.x, clamp_tb.y)", yoffset);\n+      else\n+        WRITE(p, "clamp(uv.y + float(%d) * pixel_size.y, clamp_tb.x, clamp_tb.y)", yoffset);\n+    }\n+    else\n+    {\n+      WRITE(p, "uv.y");\n+    }\n+\n+    WRITE(p, ", 0.0)))");\n+  };\n+\n+  WRITE(p, "float4 SampleEFB(float2 uv, float2 pixel_size, int xoffset)\\n");\n+  WRITE(p, "{\\n");\n+\n+  // Don\'t apply the copy filter to depth copies.\n+  // TODO: Verify this behavior on hardware.\n+  if (!params.depth)\n+  {\n+    WRITE(p, "  float4 prev_row = ");\n+    WriteSampleOp(-1);\n+    WRITE(p, ";\\n");\n+    WRITE(p, "  float4 current_row = ");\n+    WriteSampleOp(0);\n+    WRITE(p, ";\\n");\n+    WRITE(p, "  float4 next_row = ");\n+    WriteSampleOp(1);\n+    WRITE(p, ";\\n");\n+    WRITE(\n+        p,\n+        "  float3 col = float3(clamp((int3(prev_row.rgb * 255.0) * filter_coefficients[0] +\\n"\n+        "                             int3(current_row.rgb * 255.0) * filter_coefficients[1] +\\n"\n+        "                             int3(next_row.rgb * 255.0) * filter_coefficients[2]) / 64,\\n"', 'pull_request_review_id': 96836928, 'original_commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'updated_at': '2018-02-15T12:58:08Z', 'path': 'Source/Core/VideoCommon/TextureConversionShader.cpp', 'created_at': '2018-02-15T12:58:08Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467489'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467489'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168466599, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 145, 'author_association': 'MEMBER', 'position': 145, 'id': 168467489, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': "Would a semi-decent compiler not optimize this? IMO dividing is clearer than shifting when reading the code, but if it actually makes a difference I'll change it and add a comment."}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}
2018-02-15T12:57:10.204164	{'state': 'commented', 'type': 'gh_pull_request_review', 'author': 'stenzek', 'url': 'https://github.com/dolphin-emu/dolphin/pull/6369#pullrequestreview-96836692', 'pr_id': 6369, 'source': 'ghhookparser', 'comments': [{'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467297', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467297', 'diff_hunk': '@@ -101,15 +107,21 @@ void PSTextureEncoder::Encode(u8* dst, const EFBCopyParams& params, u32 native_w\n     encode_params.SrcTop = src_rect.top;\n     encode_params.DestWidth = native_width;\n     encode_params.ScaleFactor = scale_by_half ? 2 : 1;\n-    encode_params.y_scale = params.y_scale;\n+    encode_params.y_scale = y_scale;\n+    encode_params.gamma_rcp = 1.0f / gamma;\n+    encode_params.clamp_top = clamp_top ? src_rect.top / float(EFB_HEIGHT) : 0.0f;\n+    encode_params.clamp_bottom = clamp_bottom ? src_rect.bottom / float(EFB_HEIGHT) : 0.0f;\n+    for (size_t i = 0; i < filter_coefficients.size(); i++)\n+      encode_params.filter_coefficients[i] = filter_coefficients[i];', 'pull_request_review_id': 96836692, 'original_commit_id': '814633f0af943917a9c29261865058131ef940cc', 'updated_at': '2018-02-15T12:57:08Z', 'path': 'Source/Core/VideoBackends/D3D/PSTextureEncoder.cpp', 'created_at': '2018-02-15T12:57:08Z', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/168467297'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6369#discussion_r168467297'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369'}}, 'in_reply_to_id': 168377953, 'commit_id': '3623c593c9587ed013bd58f282e5220a257ba296', 'original_position': 38, 'author_association': 'MEMBER', 'position': 38, 'id': 168467297, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6369', 'body': "I used integer math and didn't sum the 2/3 coefficients to reduce error, and produce the same results as the software renderer. The EFB2Tex shaders aren't bit-accurate (they use float math to truncate the pixels) anyway, so I figured it wasn't worthwhile the performance hit."}], 'repo': 'dolphin-emu/dolphin', 'pr_title': 'Implement XFB copy filter (deflickering/brightness)', 'action': 'submitted'}

Recent 'gh_push' events

2018-02-23T17:18:23.311221	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/FramebufferManager.cpp', 'Source/Core/VideoBackends/OGL/PostProcessing.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/RasterFont.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/TextureCache.cpp', 'Source/Core/VideoBackends/OGL/TextureConverter.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/3fd4142f361bd6af2c147faf48e1d1d62d170067', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '3fd4142f361bd6af2c147faf48e1d1d62d170067', 'message': 'OGL: Track state of last bound vertex array object\n\nThis reduces the overhead of calling glBindVertexArray() every time\nRestoreAPIState() is called, even when it is redundant.', 'removed': []}, {'modified': ['Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/052d78bcb1bfafb2b4d17775ae0070496ba9e3ea', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '052d78bcb1bfafb2b4d17775ae0070496ba9e3ea', 'message': 'OGL: Log warnings from shader compiles, even if it compiled successfully', 'removed': []}, {'modified': ['Source/Core/Common/GL/GLUtil.cpp', 'Source/Core/Common/GL/GLUtil.h', 'Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/aaea515d71354074cc26b22ddb8ad97786ed1c44', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'aaea515d71354074cc26b22ddb8ad97786ed1c44', 'message': 'GLUtil: Drop now-unused attributeless VAO helpers', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DShader.cpp', 'Source/Core/VideoBackends/D3D/D3DShader.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e8ff2b2006197b40bdbc89179e0912c432ed0984', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'e8ff2b2006197b40bdbc89179e0912c432ed0984', 'message': 'D3D: Support compiling compute shaders', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/D3DState.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e18c7b1c335c23f850c3bf3662c2bff15eae6518', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'e18c7b1c335c23f850c3bf3662c2bff15eae6518', 'message': 'D3D: Support state tracking of compute shaders', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/D3DState.cpp', 'Source/Core/VideoBackends/D3D/D3DState.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/31111ef1432bc5d6d653fbef175e8ca3ac2c152d', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '31111ef1432bc5d6d653fbef175e8ca3ac2c152d', 'message': 'D3D: Remove state stack from tracker, set explicitly instead', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/CMakeLists.txt', 'Source/Core/VideoBackends/D3D/D3D.vcxproj', 'Source/Core/VideoBackends/D3D/D3D.vcxproj.filters', 'Source/Core/VideoBackends/D3D/NativeVertexFormat.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/VertexManager.h', 'Source/Core/VideoBackends/D3D/VertexShaderCache.cpp', 'Source/Core/VideoBackends/Null/Render.cpp', 'Source/Core/VideoBackends/Null/Render.h', 'Source/Core/VideoBackends/OGL/CMakeLists.txt', 'Source/Core/VideoBackends/OGL/OGL.vcxproj', 'Source/Core/VideoBackends/OGL/OGL.vcxproj.filters', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/OGL/VertexManager.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.h', 'Source/Core/VideoBackends/Software/SWRenderer.cpp', 'Source/Core/VideoBackends/Software/SWRenderer.h', 'Source/Core/VideoBackends/Vulkan/CMakeLists.txt', 'Source/Core/VideoBackends/Vulkan/Constants.h', 'Source/Core/VideoBackends/Vulkan/ObjectCache.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/StateTracker.cpp', 'Source/Core/VideoBackends/Vulkan/StateTracker.h', 'Source/Core/VideoBackends/Vulkan/Util.cpp', 'Source/Core/VideoBackends/Vulkan/Vulkan.vcxproj', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VideoCommon.vcxproj', 'Source/Core/VideoCommon/VideoCommon.vcxproj.filters'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'added': ['Source/Core/VideoBackends/D3D/DXPipeline.cpp', 'Source/Core/VideoBackends/D3D/DXPipeline.h', 'Source/Core/VideoBackends/D3D/DXShader.cpp', 'Source/Core/VideoBackends/D3D/DXShader.h', 'Source/Core/VideoBackends/OGL/OGLPipeline.cpp', 'Source/Core/VideoBackends/OGL/OGLPipeline.h', 'Source/Core/VideoBackends/OGL/OGLShader.cpp', 'Source/Core/VideoBackends/OGL/OGLShader.h', 'Source/Core/VideoBackends/Vulkan/VKPipeline.cpp', 'Source/Core/VideoBackends/Vulkan/VKPipeline.h', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.h', 'Source/Core/VideoCommon/AbstractPipeline.h', 'Source/Core/VideoCommon/AbstractShader.h'], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'message': 'VideoBackends: Add AbstractShader and AbstractPipeline classes', 'removed': []}, {'modified': ['Source/Core/Common/GL/GLUtil.cpp', 'Source/Core/Common/GL/GLUtil.h', 'Source/Core/VideoBackends/D3D/CMakeLists.txt', 'Source/Core/VideoBackends/D3D/D3D.vcxproj', 'Source/Core/VideoBackends/D3D/D3D.vcxproj.filters', 'Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DShader.cpp', 'Source/Core/VideoBackends/D3D/D3DShader.h', 'Source/Core/VideoBackends/D3D/D3DState.cpp', 'Source/Core/VideoBackends/D3D/D3DState.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/NativeVertexFormat.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/VertexManager.h', 'Source/Core/VideoBackends/D3D/VertexShaderCache.cpp', 'Source/Core/VideoBackends/Null/Render.cpp', 'Source/Core/VideoBackends/Null/Render.h', 'Source/Core/VideoBackends/OGL/CMakeLists.txt', 'Source/Core/VideoBackends/OGL/FramebufferManager.cpp', 'Source/Core/VideoBackends/OGL/OGL.vcxproj', 'Source/Core/VideoBackends/OGL/OGL.vcxproj.filters', 'Source/Core/VideoBackends/OGL/PostProcessing.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/RasterFont.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/OGL/TextureCache.cpp', 'Source/Core/VideoBackends/OGL/TextureConverter.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.h', 'Source/Core/VideoBackends/Software/SWRenderer.cpp', 'Source/Core/VideoBackends/Software/SWRenderer.h', 'Source/Core/VideoBackends/Vulkan/CMakeLists.txt', 'Source/Core/VideoBackends/Vulkan/Constants.h', 'Source/Core/VideoBackends/Vulkan/ObjectCache.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/StateTracker.cpp', 'Source/Core/VideoBackends/Vulkan/StateTracker.h', 'Source/Core/VideoBackends/Vulkan/Util.cpp', 'Source/Core/VideoBackends/Vulkan/Vulkan.vcxproj', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VideoCommon.vcxproj', 'Source/Core/VideoCommon/VideoCommon.vcxproj.filters'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'added': ['Source/Core/VideoBackends/D3D/DXPipeline.cpp', 'Source/Core/VideoBackends/D3D/DXPipeline.h', 'Source/Core/VideoBackends/D3D/DXShader.cpp', 'Source/Core/VideoBackends/D3D/DXShader.h', 'Source/Core/VideoBackends/OGL/OGLPipeline.cpp', 'Source/Core/VideoBackends/OGL/OGLPipeline.h', 'Source/Core/VideoBackends/OGL/OGLShader.cpp', 'Source/Core/VideoBackends/OGL/OGLShader.h', 'Source/Core/VideoBackends/Vulkan/VKPipeline.cpp', 'Source/Core/VideoBackends/Vulkan/VKPipeline.h', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.h', 'Source/Core/VideoCommon/AbstractPipeline.h', 'Source/Core/VideoCommon/AbstractShader.h'], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'message': 'Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-23T15:19:35.526216	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'message': 'OGL: Call GLInterface->Update() on window resize\n\nmacOS in particular requires the context be updated manually when the window\nis resized.', 'removed': []}, {'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@users.noreply.github.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'message': 'Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repo': 'dolphin-emu/dolphin', 'pusher': 'stenzek', 'forced': False, 'created': False}
2018-02-23T14:09:51.314707	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'ref_type': 'heads', 'commits': [{'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'message': 'Buildbot: Work around hdiutil bug', 'removed': []}, {'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'added': [], 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'hash': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'message': 'Merge pull request #95 from spycrab/fix_osx\n\nBuildbot: Work around hdiutil bug', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'repo': 'dolphin-emu/sadm', 'pusher': 'delroth', 'forced': False, 'created': False}
2018-02-22T22:29:20.538594	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '1ac0040103df7ca865ab7f9abfa47b411d0864c1', 'ref_type': 'heads', 'commits': [{'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/ff50322b9d6ee7c96f168e861ecf5418d1bb71ce', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': 'ff50322b9d6ee7c96f168e861ecf5418d1bb71ce', 'message': 'Buildbot: Package Qt build on OSX', 'removed': []}, {'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'added': [], 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'hash': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'message': 'Merge pull request #94 from spycrab/osx_qt\n\nBuildbot: Package Qt build on OSX', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'repo': 'dolphin-emu/sadm', 'pusher': 'delroth', 'forced': False, 'created': False}
2018-02-22T22:27:32.928753	{'ref_name': 'stable', 'base_ref_name': None, 'deleted': False, 'before_sha': '4e6b0f5ef2046a713f606f4473aed3797db5335a', 'ref_type': 'heads', 'commits': [{'modified': ['dolweb/homepage/views.py'], 'url': 'https://github.com/dolphin-emu/www/commit/27db69781d1d817aff91e5355373d6f6c7db06cb', 'added': [], 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'hash': '27db69781d1d817aff91e5355373d6f6c7db06cb', 'message': 'homepage: link to the latest master version instead of latest release.', 'removed': []}, {'modified': ['dolweb/downloads/templates/downloads-index.html'], 'url': 'https://github.com/dolphin-emu/www/commit/f06af55333db2ba64b4463eca29766af71cfd129', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leo@innovatetechnologi.es', 'name': 'Léo Lam'}, 'distinct': True, 'hash': 'f06af55333db2ba64b4463eca29766af71cfd129', 'message': 'downloads: Show dev versions on top of stable\n\nThere have been many important new features (ubershaders for example)\nand many bug fixes. Also, users on the forums keep reporting issues\nthat could have been avoided just by using a newer version.', 'removed': []}, {'modified': ['dolweb/downloads/templates/downloads-index.html', 'dolweb/homepage/views.py'], 'url': 'https://github.com/dolphin-emu/www/commit/7c4f8555f744c5f41152cab73483130bfaaeaf12', 'added': [], 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'hash': '7c4f8555f744c5f41152cab73483130bfaaeaf12', 'message': 'Merge pull request #85 from leoetlino/stable\n\nMake development versions more visible (again)', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '7c4f8555f744c5f41152cab73483130bfaaeaf12', 'repo': 'dolphin-emu/www', 'pusher': 'delroth', 'forced': False, 'created': False}
2018-02-22T17:13:11.770007	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/fd063bdc31461d37848778097822888f400f1685', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leo@innovatetechnologi.es', 'name': 'Léo Lam'}, 'distinct': True, 'hash': 'fd063bdc31461d37848778097822888f400f1685', 'message': 'Qt: Use std::abs instead of abs\n\n...since <cmath> is included, not <math.h>. May or may not fix\nhttps://bugs.dolphin-emu.org/issues/10906', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/f1f2bd9c946422c51e909b9e67f75da99a115a0d', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leo@innovatetechnologi.es', 'name': 'Léo Lam'}, 'distinct': True, 'hash': 'f1f2bd9c946422c51e909b9e67f75da99a115a0d', 'message': 'Qt: Fix warning about array initialisation', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/1e6dc196aa49f768dfece25b0be7c1af957dce92', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leo@innovatetechnologi.es', 'name': 'Léo Lam'}, 'distinct': True, 'hash': '1e6dc196aa49f768dfece25b0be7c1af957dce92', 'message': 'Qt: Fix warning about parentheses\n\nThe original code had parentheses placed in weird locations IMO, which\neven caused compilers to issue warnings.', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/c08f6f0c5335464c70c9c5e56330baced5ba6802', 'added': [], 'author': {'username': 'JosJuice', 'email': 'josjuice@gmail.com', 'name': 'JosJuice'}, 'distinct': True, 'hash': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'message': 'Merge pull request #6393 from leoetlino/warning-fixes\n\nQt: Warning fixes', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'forced': False, 'created': False}
2018-02-21T21:48:50.665795	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '619f98b97b1db175e249d381b1f9194ea7137827', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/Config/CheatWarningWidget.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/abfaff8ca9b6ef0ac7c899da3dcccb6abc8bb621', 'added': [], 'author': {'username': 'lioncash', 'email': 'mathew1800@gmail.com', 'name': 'Lioncash'}, 'distinct': True, 'hash': 'abfaff8ca9b6ef0ac7c899da3dcccb6abc8bb621', 'message': "Qt: Remove unnecessary <iostream> includes\n\n<iostream> injects a static constructor into the translation units that\nit's included into. This is trivially avoidable in these cases.", 'removed': []}, {'modified': ['Source/Core/DolphinQt2/Config/CheatWarningWidget.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'added': [], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'message': 'Merge pull request #6392 from lioncash/iostream\n\nQt: Remove unnecessary <iostream> includes', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-20T20:37:34.153795	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '9d3d31a8e87878d12dd294c68bdb1c6b5f337ade', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/HW/WiimoteEmu/EmuSubroutines.cpp', 'Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp', 'Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h', 'Source/Core/Core/State.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/de1af2e45db1d8eea0e0847f2648187cc67b11dd', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': 'de1af2e45db1d8eea0e0847f2648187cc67b11dd', 'message': 'Fix emulated Wiimotes', 'removed': []}, {'modified': ['Source/Core/Core/HW/WiimoteEmu/EmuSubroutines.cpp', 'Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp', 'Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.h', 'Source/Core/Core/State.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/619f98b97b1db175e249d381b1f9194ea7137827', 'added': [], 'author': {'username': 'JosJuice', 'email': 'josjuice@gmail.com', 'name': 'JosJuice'}, 'distinct': True, 'hash': '619f98b97b1db175e249d381b1f9194ea7137827', 'message': 'Merge pull request #6389 from spycrab/fix_wiimote\n\nFix emulated Wiimotes', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '619f98b97b1db175e249d381b1f9194ea7137827', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'forced': False, 'created': False}
2018-02-20T09:42:25.699520	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'e01fe4606858d4fa0e8800bd7afb11804902bc02', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Android/app/build.gradle'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/135ac2a7a8292b90cd1afa395e27fe3ba06709bd', 'added': [], 'author': {'username': 'mahdihijazi', 'email': 'mahdi.hijaz@hotmail.com', 'name': 'mahdihijazi'}, 'distinct': True, 'hash': '135ac2a7a8292b90cd1afa395e27fe3ba06709bd', 'message': 'Android: Use the git rev-list --count for versionCode', 'removed': []}, {'modified': ['Source/Android/app/build.gradle'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/9d3d31a8e87878d12dd294c68bdb1c6b5f337ade', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': '9d3d31a8e87878d12dd294c68bdb1c6b5f337ade', 'message': 'Merge pull request #6387 from mahdihijazi/fix_build_no\n\nAndroid: Use the git rev-list --count for versionCode', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '9d3d31a8e87878d12dd294c68bdb1c6b5f337ade', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-19T15:26:37.226218	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '93c502fef8980bf6f6db7316738857bb0818debf', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/OGLTexture.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/6490c2b86b7c56be6a1cd49f6d5f5bea639f8f59', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '6490c2b86b7c56be6a1cd49f6d5f5bea639f8f59', 'message': 'OGL: Use explicit flush instead of GL_SYNC_FLUSH_COMMANDS_BIT', 'removed': []}, {'modified': ['Source/Core/VideoBackends/OGL/OGLTexture.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e01fe4606858d4fa0e8800bd7afb11804902bc02', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': 'e01fe4606858d4fa0e8800bd7afb11804902bc02', 'message': 'Merge pull request #6367 from stenzek/gl-flush\n\nOGL: Use explicit flush instead of GL_SYNC_FLUSH_COMMANDS_BIT', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'e01fe4606858d4fa0e8800bd7afb11804902bc02', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-19T15:19:47.338490	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '456c2f42c350e15402eea169a2cc87878327c1fc', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/5baf3bbe2e2fb62cac9c1bb4cded45644ebfd3bb', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '5baf3bbe2e2fb62cac9c1bb4cded45644ebfd3bb', 'message': 'OGL: Clear backbuffer before presenting instead of at start of frame', 'removed': []}, {'modified': ['Source/Core/DolphinNoGUI/MainNoGUI.cpp', 'Source/Core/DolphinQt2/Host.cpp', 'Source/Core/DolphinQt2/Host.h', 'Source/Core/DolphinQt2/RenderWidget.cpp', 'Source/Core/DolphinQt2/RenderWidget.h', 'Source/Core/DolphinWX/FrameTools.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/main.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/SwapChain.cpp', 'Source/Core/VideoCommon/RenderBase.cpp', 'Source/Core/VideoCommon/RenderBase.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/de632fc9c8d7d026ccad1afc2f72224ee9639023', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'de632fc9c8d7d026ccad1afc2f72224ee9639023', 'message': 'Renderer: Handle resize events on-demand instead of polling\n\nWe now differentiate between a resize event and surface change/destroyed\nevent, reducing the overhead for resizes in the Vulkan backend. It is\nalso now now safe to change the surface multiple times if the video thread\nis lagging behind.', 'removed': []}, {'modified': ['Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.java'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/0dddaf9d7d0837a574c6e8d255bebb3947f09a0e', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '0dddaf9d7d0837a574c6e8d255bebb3947f09a0e', 'message': 'Android: Update renderer surface before resuming emulation\n\nPreviously, this could cause a race condition which resulted in the\nVulkan backend attempting to acquire a swap chain image from a now\nnon-existant surface. By ensuring the backend knows about the surface\nbefore a frame is presented, this race does not happen.', 'removed': []}, {'modified': ['Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/fragments/EmulationFragment.java', 'Source/Core/DolphinNoGUI/MainNoGUI.cpp', 'Source/Core/DolphinQt2/Host.cpp', 'Source/Core/DolphinQt2/Host.h', 'Source/Core/DolphinQt2/RenderWidget.cpp', 'Source/Core/DolphinQt2/RenderWidget.h', 'Source/Core/DolphinWX/FrameTools.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/main.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/SwapChain.cpp', 'Source/Core/VideoCommon/RenderBase.cpp', 'Source/Core/VideoCommon/RenderBase.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/93c502fef8980bf6f6db7316738857bb0818debf', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@users.noreply.github.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '93c502fef8980bf6f6db7316738857bb0818debf', 'message': 'Merge pull request #6330 from stenzek/resizing\n\nImprove handling of surface change/resize events in graphics backends', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '93c502fef8980bf6f6db7316738857bb0818debf', 'repo': 'dolphin-emu/dolphin', 'pusher': 'stenzek', 'forced': False, 'created': False}
2018-02-19T15:01:08.247534	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'a2d2a0a356cd9ef66077033b553fd09ba7423f9a', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoCommon/BPFunctions.cpp', 'Source/Core/VideoCommon/BPFunctions.h', 'Source/Core/VideoCommon/BPStructs.cpp', 'Source/Core/VideoCommon/RenderBase.cpp', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VertexShaderManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/5359396099dd09583a155dbf4c6bd04df0a97582', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '5359396099dd09583a155dbf4c6bd04df0a97582', 'message': 'BPFunctions: Move GX viewport conversion to VideoCommon', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoCommon/BPFunctions.cpp', 'Source/Core/VideoCommon/RenderBase.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/c1b39ecc582d5f6e7716f69644fbd54e53be538d', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': 'c1b39ecc582d5f6e7716f69644fbd54e53be538d', 'message': 'BPFunctions: Move upscaling of scissor rect to VideoCommon', 'removed': []}, {'modified': ['Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoCommon/BPFunctions.cpp', 'Source/Core/VideoCommon/BPFunctions.h', 'Source/Core/VideoCommon/BPStructs.cpp', 'Source/Core/VideoCommon/RenderBase.cpp', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VertexShaderManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/456c2f42c350e15402eea169a2cc87878327c1fc', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@users.noreply.github.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '456c2f42c350e15402eea169a2cc87878327c1fc', 'message': 'Merge pull request #6316 from stenzek/videocommon-viewport\n\nMove guest viewport conversion to VideoCommon', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '456c2f42c350e15402eea169a2cc87878327c1fc', 'repo': 'dolphin-emu/dolphin', 'pusher': 'stenzek', 'forced': False, 'created': False}
2018-02-19T14:28:08.483155	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'be1a7366a4ef30a6289dde3fa7ffc541134e1bca', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/PowerPC/Jit64/Jit_FloatingPoint.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/caf721fb3f3ab30b200a0ed403368df84d42d21f', 'added': [], 'author': {'username': 'jeffythedragonslayer', 'email': 'jeff.linahan@gmail.com', 'name': 'Jeff Linahan'}, 'distinct': True, 'hash': 'caf721fb3f3ab30b200a0ed403368df84d42d21f', 'message': 'Jit64: fixed some signed to unsigned integer warnings', 'removed': []}, {'modified': ['Source/Core/Core/PowerPC/Jit64/Jit_FloatingPoint.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a2d2a0a356cd9ef66077033b553fd09ba7423f9a', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': 'a2d2a0a356cd9ef66077033b553fd09ba7423f9a', 'message': 'Merge pull request #6384 from jeffythedragonslayer/master\n\nJit64: fixed some signed to unsigned integer warnings', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'a2d2a0a356cd9ef66077033b553fd09ba7423f9a', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-19T14:20:01.286791	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '4876b9d8e018ec79ddb213f175d81b26fb1d2e7b', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Android/app/build.gradle', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivityPresenter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivityView.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsFragment.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsFragmentPresenter.java', 'Source/Android/app/src/main/res/values/arrays.xml', 'Source/Android/app/src/main/res/values/strings.xml', 'Source/Android/jni/MainAndroid.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e19922c5de083e718c15c7b27f6780a4e5a740ed', 'added': [], 'author': {'username': 'gwicks', 'email': 'gwicks95@gmail.com', 'name': 'Greg Wicks'}, 'distinct': True, 'hash': 'e19922c5de083e718c15c7b27f6780a4e5a740ed', 'message': 'Android: Implement game-specific settings overrides UI', 'removed': []}, {'modified': ['Source/Android/app/build.gradle', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/NativeLibrary.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameAdapter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/adapters/GameRowPresenter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/MainActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/main/TvMainActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivity.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivityPresenter.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsActivityView.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsFragment.java', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/settings/SettingsFragmentPresenter.java', 'Source/Android/app/src/main/res/values/arrays.xml', 'Source/Android/app/src/main/res/values/strings.xml', 'Source/Android/jni/MainAndroid.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/be1a7366a4ef30a6289dde3fa7ffc541134e1bca', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': 'be1a7366a4ef30a6289dde3fa7ffc541134e1bca', 'message': 'Merge pull request #6225 from gwicks/android-game-settings\n\nAndroid: Implement user game-specific settings overrides.', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'be1a7366a4ef30a6289dde3fa7ffc541134e1bca', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-18T19:45:15.287956	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '6a609e6e3c5ac4f832f4f03082185cb46fd682e4', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/Host.cpp', 'Source/Core/DolphinQt2/Settings.cpp', 'Source/Core/DolphinQt2/Settings.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/87d7c994e710c72838b064212f9e40b97492da39', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': '87d7c994e710c72838b064212f9e40b97492da39', 'message': 'Qt/Settings: Implement ControllerStateNeeded', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.h', 'Source/Core/DolphinQt2/Config/Mapping/MappingWidget.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/220e4bcd99e20da5fd9127e5a9e5f44494ab13de', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': '220e4bcd99e20da5fd9127e5a9e5f44494ab13de', 'message': 'Qt/MappingButton: light up when mapped key is pressed', 'removed': []}, {'modified': ['Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp', 'Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingWidget.cpp', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/ec54b421a4f47f64dc66c394ad3e880be38a3b96', 'added': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.h'], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': 'ec54b421a4f47f64dc66c394ad3e880be38a3b96', 'message': 'Qt/Mapping: Implement indicators', 'removed': []}, {'modified': ['Source/Core/Core/HW/WiimoteEmu/WiimoteEmu.cpp', 'Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingButton.h', 'Source/Core/DolphinQt2/Config/Mapping/MappingWidget.cpp', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj', 'Source/Core/DolphinQt2/Host.cpp', 'Source/Core/DolphinQt2/Settings.cpp', 'Source/Core/DolphinQt2/Settings.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/4876b9d8e018ec79ddb213f175d81b26fb1d2e7b', 'added': ['Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.cpp', 'Source/Core/DolphinQt2/Config/Mapping/MappingIndicator.h'], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': '4876b9d8e018ec79ddb213f175d81b26fb1d2e7b', 'message': 'Merge pull request #6362 from spycrab/qt_indicators\n\nQt/Mapping: Implement indicators', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '4876b9d8e018ec79ddb213f175d81b26fb1d2e7b', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-15T15:14:32.462979	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'e7d0aae5be8b377aeaa1ede935dc70b34f670154', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoCommon/ConstantManager.h', 'Source/Core/VideoCommon/PixelShaderGen.cpp', 'Source/Core/VideoCommon/PixelShaderManager.cpp', 'Source/Core/VideoCommon/ShaderGenCommon.h', 'Source/Core/VideoCommon/UberShaderPixel.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/340ee8fff86c3ec0d290566531fc58f9e7965b76', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '340ee8fff86c3ec0d290566531fc58f9e7965b76', 'message': 'PixelShaderGen: Implement table-based fog range as in software renderer', 'removed': []}, {'modified': ['Source/Core/VideoCommon/ConstantManager.h', 'Source/Core/VideoCommon/PixelShaderGen.cpp', 'Source/Core/VideoCommon/PixelShaderManager.cpp', 'Source/Core/VideoCommon/ShaderGenCommon.h', 'Source/Core/VideoCommon/UberShaderPixel.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/6a609e6e3c5ac4f832f4f03082185cb46fd682e4', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': '6a609e6e3c5ac4f832f4f03082185cb46fd682e4', 'message': 'Merge pull request #6352 from stenzek/fogrange\n\nPixelShaderGen: Implement table-based fog range as in software renderer', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '6a609e6e3c5ac4f832f4f03082185cb46fd682e4', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-15T10:13:56.501951	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'dff7837715159be554f66f17edbe8881097ab7ab', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/PowerPC/Jit64Common/Jit64Base.cpp', 'Source/Core/Core/PowerPC/Jit64Common/TrampolineCache.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/7f3c31d78de929244baadfb8719f1bf37b85296e', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '7f3c31d78de929244baadfb8719f1bf37b85296e', 'message': 'Jit64: Set correct PC when emitting slowmem trampoline', 'removed': []}, {'modified': ['Source/Core/Core/PowerPC/Jit64Common/EmuCodeBlock.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/8933fe599c5ae7127c6cd3de707eb73f3d79d117', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '8933fe599c5ae7127c6cd3de707eb73f3d79d117', 'message': 'Jit64: Update PC before slowmem reads as well as writes', 'removed': []}, {'modified': ['Source/Core/Core/PowerPC/Jit64/Jit.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/15efd42eba99558569a41e9088aba32371c8d99a', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '15efd42eba99558569a41e9088aba32371c8d99a', 'message': "Jit64: Don't flush PC in exception block\n\nThese blocks can only be executed as a result of a DSI exception from a\nloadstore, where we now flush the PC register prior to the loadstore.", 'removed': []}, {'modified': ['Source/Core/Core/PowerPC/Jit64/Jit.cpp', 'Source/Core/Core/PowerPC/Jit64Common/EmuCodeBlock.cpp', 'Source/Core/Core/PowerPC/Jit64Common/Jit64Base.cpp', 'Source/Core/Core/PowerPC/Jit64Common/TrampolineCache.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e7d0aae5be8b377aeaa1ede935dc70b34f670154', 'added': [], 'author': {'username': 'degasus', 'email': 'degasus@users.noreply.github.com', 'name': 'Markus Wick'}, 'distinct': True, 'hash': 'e7d0aae5be8b377aeaa1ede935dc70b34f670154', 'message': 'Merge pull request #6335 from stenzek/membp\n\nJit64: Fix incorrect PC in PPC state during fastmem trampoline', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'e7d0aae5be8b377aeaa1ede935dc70b34f670154', 'repo': 'dolphin-emu/dolphin', 'pusher': 'degasus', 'forced': False, 'created': False}
2018-02-14T07:45:35.985629	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'dbdf964f2e3d2d631e682546f3d79b23f57cbc45', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/VideoBackends/Vulkan/TextureConverter.cpp', 'Source/Core/VideoBackends/Vulkan/TextureConverter.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/7c517226edb3b69123eb6682805a26c324367b3b', 'added': [], 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'hash': '7c517226edb3b69123eb6682805a26c324367b3b', 'message': 'Vulkan: Remove redundant YUYV conversion shaders\n\nThese are no longer used as of hybrid XFB.', 'removed': []}, {'modified': ['Source/Core/VideoBackends/Vulkan/TextureConverter.cpp', 'Source/Core/VideoBackends/Vulkan/TextureConverter.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/dff7837715159be554f66f17edbe8881097ab7ab', 'added': [], 'author': {'username': 'lioncash', 'email': 'mathew1800@gmail.com', 'name': 'Mat M'}, 'distinct': True, 'hash': 'dff7837715159be554f66f17edbe8881097ab7ab', 'message': 'Merge pull request #6378 from stenzek/vulkan-redundant-converter\n\nVulkan: Remove redundant YUYV conversion shaders', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'dff7837715159be554f66f17edbe8881097ab7ab', 'repo': 'dolphin-emu/dolphin', 'pusher': 'lioncash', 'forced': False, 'created': False}
2018-02-13T15:42:19.525647	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': 'f9b809a57e279ec27a05e30dc62ba3e1260c8421', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/IOS/VersionInfo.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/68f7a03d057298ca37e9e878809fa5eacb7a26a3', 'added': [], 'author': {'username': 'sepalani', 'email': 'sepalani@hotmail.fr', 'name': 'Sepalani'}, 'distinct': True, 'hash': '68f7a03d057298ca37e9e878809fa5eacb7a26a3', 'message': "ES: Make it not fail on something that isn't IOS", 'removed': []}, {'modified': ['Source/Core/Core/IOS/VersionInfo.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/dbdf964f2e3d2d631e682546f3d79b23f57cbc45', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leolino.lam@gmail.com', 'name': 'Léo Lam'}, 'distinct': True, 'hash': 'dbdf964f2e3d2d631e682546f3d79b23f57cbc45', 'message': "Merge pull request #6376 from sepalani/es-fix\n\nES: Make it not fail on something that isn't IOS", 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'dbdf964f2e3d2d631e682546f3d79b23f57cbc45', 'repo': 'dolphin-emu/dolphin', 'pusher': 'leoetlino', 'forced': False, 'created': False}
2018-02-12T21:59:33.780426	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '50f52e5549e81efd7ef90dc64b085f9104aef747', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/GCMemcardManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/c07443a628f880ccbfa57c0b6d073616c421de50', 'added': [], 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'hash': 'c07443a628f880ccbfa57c0b6d073616c421de50', 'message': 'Qt/GCMemcardManager: Misc. improvements', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/GCMemcardManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/f9b809a57e279ec27a05e30dc62ba3e1260c8421', 'added': [], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': 'f9b809a57e279ec27a05e30dc62ba3e1260c8421', 'message': 'Merge pull request #6361 from spycrab/qt_fix_layout\n\nQt/GCMemcardManager: Misc. improvements', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': 'f9b809a57e279ec27a05e30dc62ba3e1260c8421', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-12T21:07:16.753609	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '1e8f4ce84f25847c3900be7f0a04ac1e58b46a31', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/MainWindow.h', 'Source/Core/DolphinQt2/MenuBar.cpp', 'Source/Core/DolphinQt2/MenuBar.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/3f1ffbad0d02e3ac68d7d8e12adef12ea8db75a6', 'added': ['Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.cpp', 'Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.h', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.h', 'Source/Core/DolphinQt2/TAS/Shared.h', 'Source/Core/DolphinQt2/TAS/StickWidget.cpp', 'Source/Core/DolphinQt2/TAS/StickWidget.h'], 'author': {'username': 'rukai', 'email': 'rubickent@gmail.com', 'name': 'Rukai'}, 'distinct': True, 'hash': '3f1ffbad0d02e3ac68d7d8e12adef12ea8db75a6', 'message': 'Qt: Implement GC TAS input window', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/MainWindow.h', 'Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.cpp', 'Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.h', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.h', 'Source/Core/DolphinQt2/TAS/Shared.h', 'Source/Core/DolphinQt2/TAS/StickWidget.cpp', 'Source/Core/DolphinQt2/TAS/StickWidget.h', 'Source/Core/DolphinWX/TASInputDlg.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/d07e212cef40624276617bcc0519aef6325c7da3', 'added': ['Source/Core/DolphinQt2/TAS/Shared.cpp', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.h'], 'author': {'username': 'rukai', 'email': 'rubickent@gmail.com', 'name': 'Rukai'}, 'distinct': True, 'hash': 'd07e212cef40624276617bcc0519aef6325c7da3', 'message': 'Qt: Implement Wii TAS input window', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/Shared.cpp', 'Source/Core/DolphinQt2/TAS/Shared.h', 'Source/Core/DolphinQt2/TAS/StickWidget.cpp', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a8d482d8e1419978e9e080bbf501a42d8781d68c', 'added': ['Source/Core/DolphinQt2/TAS/IRWidget.cpp', 'Source/Core/DolphinQt2/TAS/IRWidget.h'], 'author': {'username': 'rukai', 'email': 'rubickent@gmail.com', 'name': 'Rukai'}, 'distinct': True, 'hash': 'a8d482d8e1419978e9e080bbf501a42d8781d68c', 'message': 'IR widget is now a rectangle', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/TAS/IRWidget.cpp', 'Source/Core/DolphinQt2/TAS/IRWidget.h', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/5fe72700fade70511852979af33d8da5506754fc', 'added': [], 'author': {'username': 'rukai', 'email': 'rubickent@gmail.com', 'name': 'Lucas Kent'}, 'distinct': True, 'hash': '5fe72700fade70511852979af33d8da5506754fc', 'message': 'Qt: TAS input window - Fix mac os', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/MainWindow.h', 'Source/Core/DolphinQt2/MenuBar.cpp', 'Source/Core/DolphinQt2/MenuBar.h', 'Source/Core/DolphinWX/TASInputDlg.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/50f52e5549e81efd7ef90dc64b085f9104aef747', 'added': ['Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.cpp', 'Source/Core/DolphinQt2/QtUtils/AspectRatioWidget.h', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/GCTASInputWindow.h', 'Source/Core/DolphinQt2/TAS/IRWidget.cpp', 'Source/Core/DolphinQt2/TAS/IRWidget.h', 'Source/Core/DolphinQt2/TAS/Shared.cpp', 'Source/Core/DolphinQt2/TAS/Shared.h', 'Source/Core/DolphinQt2/TAS/StickWidget.cpp', 'Source/Core/DolphinQt2/TAS/StickWidget.h', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.cpp', 'Source/Core/DolphinQt2/TAS/WiiTASInputWindow.h'], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': '50f52e5549e81efd7ef90dc64b085f9104aef747', 'message': 'Merge pull request #6359 from rukai/dolphinQtTAS\n\nQt TAS input windows', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '50f52e5549e81efd7ef90dc64b085f9104aef747', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-12T17:29:40.852134	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '35c43e74d05a1f667c2e5f72e5c3a993adb8e101', 'ref_type': 'heads', 'commits': [{'modified': [], 'url': 'https://github.com/dolphin-emu/dolphin/commit/57ac96a377fd179eea46e1f84afc881c7d52e9c8', 'added': ['Data/Sys/GameSettings/SUU.ini', 'Data/Sys/GameSettings/SUW.ini'], 'author': {'username': 'AwesomeMarioFan', 'email': 'admin@mariocube.com', 'name': 'John Pansera'}, 'distinct': True, 'hash': '57ac96a377fd179eea46e1f84afc881c7d52e9c8', 'message': 'GameINI: Safe texture cache for uDraw games', 'removed': []}, {'modified': [], 'url': 'https://github.com/dolphin-emu/dolphin/commit/1e8f4ce84f25847c3900be7f0a04ac1e58b46a31', 'added': ['Data/Sys/GameSettings/SUU.ini', 'Data/Sys/GameSettings/SUW.ini'], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': '1e8f4ce84f25847c3900be7f0a04ac1e58b46a31', 'message': 'Merge pull request #6363 from AwesomeMarioFan/feature2\n\nGameINI: Safe texture cache for uDraw games', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '1e8f4ce84f25847c3900be7f0a04ac1e58b46a31', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-12T17:29:00.313414	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '5b744146f33ac45bf8347e2b34ede0420ca7fa90', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/Core.cpp', 'Source/Core/DolphinQt2/HotkeyScheduler.cpp', 'Source/Core/DolphinQt2/HotkeyScheduler.h', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/MainWindow.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/4b5373b25b1d0788fc5beb2cde59b6f246abae57', 'added': [], 'author': {'username': 'rukai', 'email': 'rubickent@gmail.com', 'name': 'Rukai'}, 'distinct': True, 'hash': '4b5373b25b1d0788fc5beb2cde59b6f246abae57', 'message': 'Remove hardcoded esc hotkey, make pause/stop hotkey actually toggle rather than just pausing, fix frame advance hotkey', 'removed': []}, {'modified': ['Source/Core/Core/Core.cpp', 'Source/Core/DolphinQt2/HotkeyScheduler.cpp', 'Source/Core/DolphinQt2/HotkeyScheduler.h', 'Source/Core/DolphinQt2/MainWindow.cpp', 'Source/Core/DolphinQt2/MainWindow.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/35c43e74d05a1f667c2e5f72e5c3a993adb8e101', 'added': [], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': '35c43e74d05a1f667c2e5f72e5c3a993adb8e101', 'message': 'Merge pull request #6371 from rukai/dolphinQtHotkeyFixes\n\nQt: Various fixes to hotkeys', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '35c43e74d05a1f667c2e5f72e5c3a993adb8e101', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-12T17:28:18.929985	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '8e06257f198f83d563079047fe2634a4f7fd7b11', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/Config/SettingsWindow.cpp', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/5b01c5e119112c373bf4902d853acfd06457791b', 'added': ['Source/Core/DolphinQt2/Settings/USBDeviceAddToWhitelistDialog.cpp', 'Source/Core/DolphinQt2/Settings/USBDeviceAddToWhitelistDialog.h', 'Source/Core/DolphinQt2/Settings/WiiPane.cpp', 'Source/Core/DolphinQt2/Settings/WiiPane.h'], 'author': {'email': 'cfm.work@googlemail.com', 'name': 'Christian Murphy'}, 'distinct': True, 'hash': '5b01c5e119112c373bf4902d853acfd06457791b', 'message': 'Qt: Implement Wiimote speaker volume slider and Wiimote motor toggle, rebased all changes... included fixed based on feedback by ligfx', 'removed': []}, {'modified': ['Source/Core/DolphinQt2/CMakeLists.txt', 'Source/Core/DolphinQt2/Config/SettingsWindow.cpp', 'Source/Core/DolphinQt2/DolphinQt2.vcxproj'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/5b744146f33ac45bf8347e2b34ede0420ca7fa90', 'added': ['Source/Core/DolphinQt2/Settings/USBDeviceAddToWhitelistDialog.cpp', 'Source/Core/DolphinQt2/Settings/USBDeviceAddToWhitelistDialog.h', 'Source/Core/DolphinQt2/Settings/WiiPane.cpp', 'Source/Core/DolphinQt2/Settings/WiiPane.h'], 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'hash': '5b744146f33ac45bf8347e2b34ede0420ca7fa90', 'message': 'Merge pull request #6336 from spycrab/qt_additional_wiimote_settings\n\nQt: Implement Wiimote pane', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '5b744146f33ac45bf8347e2b34ede0420ca7fa90', 'repo': 'dolphin-emu/dolphin', 'pusher': 'Helios747', 'forced': False, 'created': False}
2018-02-12T09:02:46.931081	{'ref_name': 'master', 'base_ref_name': None, 'deleted': False, 'before_sha': '0d2d06fadb8f158a058ca6b0a0103a7714b3b87d', 'ref_type': 'heads', 'commits': [{'modified': ['Source/Core/Core/IOS/ES/ES.cpp', 'Source/Core/Core/IOS/ES/Views.cpp', 'Source/Core/Core/IOS/VersionInfo.cpp', 'Source/Core/Core/IOS/VersionInfo.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/2ce7fff819cd9c60e2ce4330f61e13177fa7f93d', 'added': [], 'author': {'username': 'sepalani', 'email': 'sepalani@hotmail.fr', 'name': 'Sepalani'}, 'distinct': True, 'hash': '2ce7fff819cd9c60e2ce4330f61e13177fa7f93d', 'message': 'ES: Make it fail on unsupported installed IOSes', 'removed': []}, {'modified': ['Source/Core/Core/IOS/Device.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a663fcb977526679df17f5de17634a7839e722ae', 'added': [], 'author': {'username': 'sepalani', 'email': 'sepalani@hotmail.fr', 'name': 'Sepalani'}, 'distinct': True, 'hash': 'a663fcb977526679df17f5de17634a7839e722ae', 'message': 'IOS: Adjust reply timing to be closer to real hardware', 'removed': []}, {'modified': ['Source/Core/Core/IOS/Device.cpp', 'Source/Core/Core/IOS/ES/ES.cpp', 'Source/Core/Core/IOS/ES/Views.cpp', 'Source/Core/Core/IOS/VersionInfo.cpp', 'Source/Core/Core/IOS/VersionInfo.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/8e06257f198f83d563079047fe2634a4f7fd7b11', 'added': [], 'author': {'username': 'leoetlino', 'email': 'leolino.lam@gmail.com', 'name': 'Léo Lam'}, 'distinct': True, 'hash': '8e06257f198f83d563079047fe2634a4f7fd7b11', 'message': 'Merge pull request #6374 from sepalani/ios-reload\n\nES: Make it fail on unsupported installed IOSes', 'removed': []}], 'type': 'gh_push', 'source': 'ghhookparser', 'after_sha': '8e06257f198f83d563079047fe2634a4f7fd7b11', 'repo': 'dolphin-emu/dolphin', 'pusher': 'leoetlino', 'forced': False, 'created': False}

Recent 'internal_log' events

2018-02-23T17:18:24.474194	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T17:18:24.176379	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T17:18:23.636726	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T17:18:23.314660	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T17:18:21.323541	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T15:19:35.835268	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T15:19:35.531625	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T15:19:35.282085	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:12:57.391736	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:12:15.927857	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:09:51.904379	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:09:51.614980	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:09:51.319776	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T14:08:09.607966	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:55:12.174069	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): www.googleapis.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:54:41.638685	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:43:48.804834	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:43:48.229827	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:43:48.156927	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): fifoci.dolphin-emu.org', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:41:02.947399	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:41:02.144809	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:41:02.069215	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): fifoci.dolphin-emu.org', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:40:27.211979	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:40:26.640573	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): api.github.com', 'type': 'internal_log', 'source': 'logging'}
2018-02-23T13:40:26.557692	{'pathname': '/home/central/venv/lib/python3.5/site-packages/requests/packages/urllib3/connectionpool.py', 'lineno': 657, 'level': 'INFO', 'args': '()', 'msg': 'Starting new HTTPS connection (1): fifoci.dolphin-emu.org', 'type': 'internal_log', 'source': 'logging'}

Recent 'irc_message' events

2018-02-23T20:20:44.966078	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'gwicks', 'what': 'degasus: How important would you say it is that I go through and optimize the joystick logic, in terms of merge-ability? (Sorry if this is a dupe message, my connection wonked out)', 'source': 'ircclient'}
2018-02-23T18:05:26.708080	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': 'create an IRC bot - JMCBot, it automatically identifies Cool PRs using #MachineLearning and pokes for reviews daily', 'source': 'ircclient'}
2018-02-23T18:01:09.515944	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'v'}, 'who': 'JMC47', 'what': "Helios747: plz don't.  That's my only use", 'source': 'ircclient'}
2018-02-23T17:40:03.330990	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': 'hey google, how do I cronjob a message to IRC to bug degasus to review abstract framebuffers?', 'source': 'ircclient'}
2018-02-23T17:31:20.956731	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'degasus', 'what': 'just bug me daily ;)', 'source': 'ircclient'}
2018-02-23T17:20:21.004808	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': "unfortunately I don't know how to review framebuffers than to check for contributing.md violations which I can't spot any at a quick glance. Bug degasus to review it :P", 'source': 'ircclient'}
2018-02-23T17:18:43.198871	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': 'Stenzek: rebase all of the things', 'source': 'ircclient'}
2018-02-23T16:53:53.892031	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': 'Helios747: Yeah, it is', 'source': 'ircclient'}
2018-02-23T16:18:00.742499	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': "I'm trusting you", 'source': 'ircclient'}
2018-02-23T16:17:55.720165	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': "Stenzek: is abstract pipelines done? iwubcode and the cached lions reviewed it, good enough for me. But I don't know how to review that", 'source': 'ircclient'}
2018-02-23T16:15:48.570303	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': {'o'}, 'who': 'Helios747', 'what': '*wakes up* whatsneedsmergingwha', 'source': 'ircclient'}
2018-02-23T16:06:47.941422	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'gwicks', 'what': "Ah, there's the invitation to the dolphin GH org, it wasn't in my notifications for some reason", 'source': 'ircclient'}
2018-02-23T16:05:17.908585	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'gwicks', 'what': 'JMC47: Have you had a chance to test the revised touch joystick tweaks?', 'source': 'ircclient'}
2018-02-23T14:13:08.698945	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': 'delroth: Works now! Thanks a bunch', 'source': 'ircclient'}
2018-02-23T14:08:59.980036	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': '^ delroth', 'source': 'ircclient'}
2018-02-23T14:02:03.843137	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': "spycrab0: I'd say the rm/mkdir/cp as one task, and then the hdiutil as its own task. But I'm no buildbot expert", 'source': 'ircclient'}
2018-02-23T14:00:35.276215	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': "heh, electron-builder's solution was to mount it, copy all the folders in, and then unmount it", 'source': 'ircclient'}
2018-02-23T13:58:45.959143	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': 'Hm...the only question I have left is whether this should be one buildstep or multiple', 'source': 'ircclient'}
2018-02-23T13:58:25.735462	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': "Stenzek: Doesn't matter :P", 'source': 'ircclient'}
2018-02-23T13:58:05.545631	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': "Except I just copied the wx app as the qt app because I'm too lazy to setup the qt libraries", 'source': 'ircclient'}
2018-02-23T13:57:27.048459	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': 'Seems to work okay here', 'source': 'ircclient'}
2018-02-23T13:57:22.429750	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': 'spycrab0: rm -fr staging; mkdir staging; cp -a Binaries/Dolphin.app Binaries/dolphin-emu-qt2.app staging; hdiutil create .... -srcfolder staging ...', 'source': 'ircclient'}
2018-02-23T13:56:05.603238	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': 'So creating a temp folder moving both images into that folder and then using that folder as the srcfolder should work then?', 'source': 'ircclient'}
2018-02-23T13:54:56.307806	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'Stenzek', 'what': "I don't have buildbot set up, but I can test the commands", 'source': 'ircclient'}
2018-02-23T13:54:52.095695	{'type': 'irc_message', 'direct': False, 'where': '#dolphin-dev', 'modes': set(), 'who': 'spycrab0', 'what': 'Does Apple have a bugtracker?', 'source': 'ircclient'}

Recent 'issue' events

2018-02-23T13:50:07.974933	{'type': 'issue', 'author': 'JosJuice', 'new': False, 'update': 1, 'title': 'Android: Controller mapping direction buttons incorrectly ', 'source': 'redmine', 'issue': 10909}
2018-02-23T13:47:17.264252	{'type': 'issue', 'author': 'Pinchy123', 'new': True, 'update': 0, 'title': 'Android: Controller mapping direction buttons incorrectly ', 'source': 'redmine', 'issue': 10909}
2018-02-23T07:07:39.895541	{'type': 'issue', 'author': 'JosJuice', 'new': False, 'update': 1, 'title': 'Alow decrypted WBFS images', 'source': 'redmine', 'issue': 10907}
2018-02-23T06:17:40.135010	{'type': 'issue', 'author': 'Lithium64', 'new': True, 'update': 0, 'title': "Vulkan: XFB to texture and ram don't work", 'source': 'redmine', 'issue': 10908}
2018-02-23T06:04:39.280532	{'type': 'issue', 'author': 'Lithium64', 'new': False, 'update': 4, 'title': 'Mesa/radeonsi hangs during glClientWaitSync()', 'source': 'redmine', 'issue': 10904}
2018-02-23T00:56:03.212274	{'type': 'issue', 'author': 'Stenzek', 'new': False, 'update': 3, 'title': 'Mesa/radeonsi hangs during glClientWaitSync()', 'source': 'redmine', 'issue': 10904}
2018-02-23T00:13:40.370981	{'type': 'issue', 'author': 'Anuskuss', 'new': True, 'update': 0, 'title': 'Alow decrypted WBFS images', 'source': 'redmine', 'issue': 10907}
2018-02-22T19:24:24.420095	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 3, 'title': 'Compilation failure, "call of overloaded `abs(flaot&)` is ambiguous', 'source': 'redmine', 'issue': 10906}
2018-02-22T19:22:47.683816	{'type': 'issue', 'author': 'PureTryOut', 'new': False, 'update': 2, 'title': 'Compilation failure, "call of overloaded `abs(flaot&)` is ambiguous', 'source': 'redmine', 'issue': 10906}
2018-02-22T17:14:48.483741	{'type': 'issue', 'author': 'leoetlino', 'new': False, 'update': 1, 'title': 'Compilation failure, "call of overloaded `abs(flaot&)` is ambiguous', 'source': 'redmine', 'issue': 10906}
2018-02-22T15:07:19.085881	{'type': 'issue', 'author': 'nikosp', 'new': False, 'update': 10, 'title': '[Android] No objects in Harvest Moon A Wonderful Life', 'source': 'redmine', 'issue': 9911}
2018-02-22T14:59:39.043951	{'type': 'issue', 'author': 'dark_sylinc', 'new': False, 'update': 2, 'title': 'Mesa/radeonsi hangs during glClientWaitSync()', 'source': 'redmine', 'issue': 10904}
2018-02-22T14:38:48.008205	{'type': 'issue', 'author': 'PureTryOut', 'new': True, 'update': 0, 'title': 'Compilation failure, "call of overloaded `abs(flaot&)` is ambiguous', 'source': 'redmine', 'issue': 10906}
2018-02-22T09:15:13.253642	{'type': 'issue', 'author': 'luckypatcherainstall', 'new': True, 'update': 0, 'title': 'Using Lucky Patcher 6.5.4 APK Download - Free Tools APP for Android', 'source': 'redmine', 'issue': 10905}
2018-02-22T03:58:21.220948	{'type': 'issue', 'author': 'Stenzek', 'new': False, 'update': 1, 'title': 'Mesa/radeonsi hangs during glClientWaitSync()', 'source': 'redmine', 'issue': 10904}
2018-02-22T03:19:20.208164	{'type': 'issue', 'author': 'dark_sylinc', 'new': True, 'update': 0, 'title': 'StreamBuffer is a disaster!', 'source': 'redmine', 'issue': 10904}
2018-02-21T19:22:38.675154	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 1, 'title': 'Incorrect cheat count Gecko codes', 'source': 'redmine', 'issue': 10820}
2018-02-21T19:22:20.836158	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 1, 'title': 'Graphics black out', 'source': 'redmine', 'issue': 10583}
2018-02-21T19:22:05.438530	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 4, 'title': 'Fast Depth Calculation and vulkan on linux', 'source': 'redmine', 'issue': 10799}
2018-02-21T19:21:00.879523	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 2, 'title': 'Dolphin Mac Savestates Not Appearing', 'source': 'redmine', 'issue': 10875}
2018-02-21T19:20:52.346458	{'type': 'issue', 'author': 'Helios', 'new': False, 'update': 1, 'title': 'Dolphin Mac Savestates Not Appearing', 'source': 'redmine', 'issue': 10875}
2018-02-21T12:52:35.089491	{'type': 'issue', 'author': 'usps', 'new': False, 'update': 7, 'title': 'Core: [Feature Request] Sort Gecko Codes alphabetically', 'source': 'redmine', 'issue': 10819}
2018-02-21T12:18:08.338635	{'type': 'issue', 'author': 'androidgames', 'new': False, 'update': 1, 'title': "Real Wii Remotes don't reconnect when using Gecko OS or Minima Launcher", 'source': 'redmine', 'issue': 10896}
2018-02-21T07:30:52.955396	{'type': 'issue', 'author': 'gamesapps', 'new': True, 'update': 0, 'title': 'Game Killer (No Root) APK Latest v5.20 Free Download For Android', 'source': 'redmine', 'issue': 10903}
2018-02-21T06:59:29.731100	{'type': 'issue', 'author': 'MayImilae', 'new': False, 'update': 1, 'title': '[spam]', 'source': 'redmine', 'issue': 10902}

Recent 'pull_request_fifoci_status' events

2018-02-23T13:43:49.373411	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T13:41:03.480858	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T13:40:27.778895	{'pr': 6386, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T13:21:51.318881	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T13:19:28.830612	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T13:18:49.844710	{'pr': 6386, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:38:25.310179	{'pr': 6394, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:35:34.239831	{'pr': 6394, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:34:58.719017	{'pr': 6394, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:16:47.211015	{'pr': 6394, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:13:02.956476	{'pr': 6394, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-23T12:11:58.914933	{'pr': 6394, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T23:32:54.966020	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': '34b6d2ed57e858d7b1e31a8517e85bc33f50a6d4', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T23:30:08.907186	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '34b6d2ed57e858d7b1e31a8517e85bc33f50a6d4', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T23:29:33.985996	{'pr': 6325, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '34b6d2ed57e858d7b1e31a8517e85bc33f50a6d4', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T22:16:17.623648	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': '77fe52509fd91dbbcaffef0eb9aaf84c845ccf61', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T22:10:53.040745	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '77fe52509fd91dbbcaffef0eb9aaf84c845ccf61', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T22:10:16.664704	{'pr': 6325, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '77fe52509fd91dbbcaffef0eb9aaf84c845ccf61', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:48:41.681794	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': 'adfd7cc2f79d8cb5f5ee82ebfec881b548433d76', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:42:28.436435	{'pr': 6386, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'adfd7cc2f79d8cb5f5ee82ebfec881b548433d76', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:41:49.675963	{'pr': 6386, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': 'adfd7cc2f79d8cb5f5ee82ebfec881b548433d76', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:32:56.419330	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': '48cfc88f76aceed67f24663958475764d1f3ec34', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:29:44.353392	{'pr': 6325, 'service': 'pr-fifoci-ogl-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '48cfc88f76aceed67f24663958475764d1f3ec34', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T20:29:05.409448	{'pr': 6325, 'service': 'pr-fifoci-sw-lin-mesa', 'repo': 'dolphin-emu/dolphin', 'hash': '48cfc88f76aceed67f24663958475764d1f3ec34', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}
2018-02-22T17:09:22.771542	{'pr': 6393, 'service': 'pr-fifoci-ogl-lin-intel', 'repo': 'dolphin-emu/dolphin', 'hash': '1e6dc196aa49f768dfece25b0be7c1af957dce92', 'type': 'pull_request_fifoci_status', 'source': 'buildbot'}

Recent 'raw_bb_hook' events

2018-02-23T17:29:40.144838	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/12/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9311, 'builderid': 12, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9311, 'builderid': 12, 'buildid': 6966, 'masterid': 1, 'complete': True, 'workerid': 11, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['delroth-nuc', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-intel', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['delroth-nuc', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/data/buildslave/buildslave/fifoci-ogl-lin-intel', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-intel', 'builderid': 12}, 'complete_at': 1519406980, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:27:00.824004	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/36/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9316, 'builderid': 36, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9316, 'builderid': 36, 'buildid': 6964, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-mesa', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-ogl-lin-mesa', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-mesa', 'builderid': 36}, 'complete_at': 1519406821, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:26:23.951531	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/16/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9312, 'builderid': 16, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9312, 'builderid': 16, 'buildid': 6965, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-sw-lin-mesa', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-sw-lin-mesa', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-sw-lin-mesa', 'builderid': 16}, 'complete_at': 1519406784, 'started_at': 1519406370, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:23:31.951714	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/25/builds/112', 'results': 0, 'buildrequest': {'claimed_at': 1519406511, 'waited_for': False, 'claimed': True, 'buildrequestid': 9319, 'builderid': 25, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406511, 'buildsetid': 2609, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9319, 'builderid': 25, 'buildid': 6968, 'masterid': 1, 'complete': True, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2609, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406511, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [112, 'Build'], 'scheduler': ['win64-debug', 'Scheduler'], 'buildername': ['debug-win-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'build_url': ['https://dl.dolphin-emu.org/builds/dolphin-master-5.0-6372-dbg-x64.7z', 'SetProperty'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['C:\\buildbot\\debug-win-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'debug-win-x64', 'builderid': 25}, 'complete_at': 1519406612, 'started_at': 1519406512, 'number': 112}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:51.611635	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/25/builds/112', 'results': None, 'buildrequest': {'claimed_at': 1519406511, 'waited_for': False, 'claimed': True, 'buildrequestid': 9319, 'builderid': 25, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406511, 'buildsetid': 2609, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9319, 'builderid': 25, 'buildid': 6968, 'masterid': 1, 'complete': False, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2609, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406511, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [112, 'Build'], 'scheduler': ['win64-debug', 'Scheduler'], 'buildername': ['debug-win-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'debug-win-x64', 'builderid': 25}, 'complete_at': None, 'started_at': 1519406512, 'number': 112}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:51.493499	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/15/builds/140', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9306, 'builderid': 15, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2601, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9306, 'builderid': 15, 'buildid': 6959, 'masterid': 1, 'complete': True, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2601, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'win64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [140, 'Build'], 'scheduler': ['win64-release', 'Scheduler'], 'buildername': ['release-win-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'build_url': ['https://dl.dolphin-emu.org/builds/dolphin-master-5.0-6372-x64.7z', 'SetProperty'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['C:\\buildbot\\release-win-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-win-x64', 'builderid': 15}, 'complete_at': 1519406511, 'started_at': 1519406353, 'number': 140}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:21:16.009830	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/1/builds/143', 'results': 0, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9317, 'builderid': 1, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406370, 'buildsetid': 2607, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9317, 'builderid': 1, 'buildid': 6967, 'masterid': 1, 'complete': True, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2607, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406370, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [143, 'Build'], 'scheduler': ['android-release', 'Scheduler'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'buildername': ['release-android', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/worker/release-android', 'Worker'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-android', 'builderid': 1}, 'complete_at': 1519406476, 'started_at': 1519406370, 'number': 143}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:20:32.737628	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/11/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9307, 'builderid': 11, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2602, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9307, 'builderid': 11, 'buildid': 6961, 'masterid': 1, 'complete': True, 'workerid': 12, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2602, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'deb64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['debian', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['deb64-release', 'Scheduler'], 'buildername': ['release-deb-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['debian', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/delroth/buildslave/release-deb-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-deb-x64', 'builderid': 11}, 'complete_at': 1519406433, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:20:32.555747	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/31/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9310, 'builderid': 31, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2605, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9310, 'builderid': 31, 'buildid': 6962, 'masterid': 1, 'complete': True, 'workerid': 1, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2605, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'osx-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['osx', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['osx-release', 'Scheduler'], 'buildername': ['release-osx-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['osx', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/Users/osxguest/buildslave/release-osx-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-osx-x64', 'builderid': 31}, 'complete_at': 1519406432, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:37.563251	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/9/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9308, 'builderid': 9, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2603, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9308, 'builderid': 9, 'buildid': 6963, 'masterid': 1, 'complete': True, 'workerid': 8, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2603, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'freebsd-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['freebsd', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['freebsd-release', 'Scheduler'], 'buildername': ['release-freebsd-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [2, 'WarningCountingShellCommand'], 'slavename': ['freebsd', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/usr/home/buildbot/freebsd/release-freebsd-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-freebsd-x64', 'builderid': 9}, 'complete_at': 1519406378, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.443363	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/1/builds/143', 'results': None, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9317, 'builderid': 1, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406370, 'buildsetid': 2607, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9317, 'builderid': 1, 'buildid': 6967, 'masterid': 1, 'complete': False, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2607, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519406370, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [143, 'Build'], 'scheduler': ['android-release', 'Scheduler'], 'buildername': ['release-android', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-android', 'builderid': 1}, 'complete_at': None, 'started_at': 1519406370, 'number': 143}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.241583	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/12/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406370, 'waited_for': False, 'claimed': True, 'buildrequestid': 9311, 'builderid': 12, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9311, 'builderid': 12, 'buildid': 6966, 'masterid': 1, 'complete': False, 'workerid': 11, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['delroth-nuc', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-intel', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['delroth-nuc', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-intel', 'builderid': 12}, 'complete_at': None, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.235236	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/16/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9312, 'builderid': 16, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9312, 'builderid': 16, 'buildid': 6965, 'masterid': 1, 'complete': False, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-sw-lin-mesa', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-sw-lin-mesa', 'builderid': 16}, 'complete_at': None, 'started_at': 1519406370, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.170609	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/36/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406369, 'waited_for': False, 'claimed': True, 'buildrequestid': 9316, 'builderid': 36, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406369, 'buildsetid': 2606, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9316, 'builderid': 36, 'buildid': 6964, 'masterid': 1, 'complete': False, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2606, 'parent_buildid': 6960, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519406369, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-mesa', 'Builder'], 'shortrev': ['5.0-6372', 'Trigger'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-mesa', 'builderid': 36}, 'complete_at': None, 'started_at': 1519406370, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:30.126291	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/37/builds/136', 'results': 0, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9309, 'builderid': 37, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2604, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9309, 'builderid': 37, 'buildid': 6960, 'masterid': 1, 'complete': True, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2604, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'ubu64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['ubu64-release', 'Scheduler'], 'buildername': ['release-ubu-x64', 'Builder'], 'got_revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/worker/release-ubu-x64', 'Worker'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-ubu-x64', 'builderid': 37}, 'complete_at': 1519406370, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.999006	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/9/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9308, 'builderid': 9, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2603, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9308, 'builderid': 9, 'buildid': 6963, 'masterid': 1, 'complete': False, 'workerid': 8, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2603, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'freebsd-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['freebsd', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['freebsd-release', 'Scheduler'], 'buildername': ['release-freebsd-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['freebsd', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-freebsd-x64', 'builderid': 9}, 'complete_at': None, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.950480	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/37/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9309, 'builderid': 37, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2604, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9309, 'builderid': 37, 'buildid': 6960, 'masterid': 1, 'complete': False, 'workerid': 9, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2604, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'ubu64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['ubuntu', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['ubu64-release', 'Scheduler'], 'buildername': ['release-ubu-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['ubuntu', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-ubu-x64', 'builderid': 37}, 'complete_at': None, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.949563	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/31/builds/136', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9310, 'builderid': 31, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2605, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9310, 'builderid': 31, 'buildid': 6962, 'masterid': 1, 'complete': False, 'workerid': 1, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2605, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'osx-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['osx', 'Worker'], 'buildnumber': [136, 'Build'], 'scheduler': ['osx-release', 'Scheduler'], 'buildername': ['release-osx-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['osx', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-osx-x64', 'builderid': 31}, 'complete_at': None, 'started_at': 1519406353, 'number': 136}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.936019	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/11/builds/135', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9307, 'builderid': 11, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2602, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9307, 'builderid': 11, 'buildid': 6961, 'masterid': 1, 'complete': False, 'workerid': 12, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2602, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'deb64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['debian', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['deb64-release', 'Scheduler'], 'buildername': ['release-deb-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['debian', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-deb-x64', 'builderid': 11}, 'complete_at': None, 'started_at': 1519406353, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T17:19:12.911528	{'raw': {'state_string': 'starting', 'url': 'https://buildbot.dolphin-emu.org/#builders/15/builds/140', 'results': None, 'buildrequest': {'claimed_at': 1519406352, 'waited_for': False, 'claimed': True, 'buildrequestid': 9306, 'builderid': 15, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519406352, 'buildsetid': 2601, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9306, 'builderid': 15, 'buildid': 6959, 'masterid': 1, 'complete': False, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2601, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'win64-release' triggered this build", 'submitted_at': 1519406352, 'sourcestamps': [{'project': '', 'revision': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 676, 'created_at': 1519406353}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [140, 'Build'], 'scheduler': ['win64-release', 'Scheduler'], 'buildername': ['release-win-x64', 'Builder'], 'shortrev': ['5.0-6372', 'Change'], 'revision': ['b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'Build'], 'project': ['', 'Build'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'branchname': ['master', 'Change'], 'author': ['Anthony', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-win-x64', 'builderid': 15}, 'complete_at': None, 'started_at': 1519406353, 'number': 140}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T15:30:38.761348	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/11/builds/134', 'results': 0, 'buildrequest': {'claimed_at': 1519399209, 'waited_for': False, 'claimed': True, 'buildrequestid': 9293, 'builderid': 11, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519399209, 'buildsetid': 2593, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9293, 'builderid': 11, 'buildid': 6951, 'masterid': 1, 'complete': True, 'workerid': 12, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2593, 'parent_buildid': None, 'reason': "The AnyBranchScheduler scheduler named 'deb64-release' triggered this build", 'submitted_at': 1519399209, 'sourcestamps': [{'project': '', 'revision': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 675, 'created_at': 1519399209}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'Change'], 'branch': [None, 'Build'], 'workername': ['debian', 'Worker'], 'buildnumber': [134, 'Build'], 'scheduler': ['deb64-release', 'Scheduler'], 'buildername': ['release-deb-x64', 'Builder'], 'got_revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6364', 'Change'], 'revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'Build'], 'project': ['', 'Build'], 'warnings-count': [71, 'WarningCountingShellCommand'], 'slavename': ['debian', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/delroth/buildslave/release-deb-x64', 'Worker'], 'author': ['Stenzek', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'release-deb-x64', 'builderid': 11}, 'complete_at': 1519399839, 'started_at': 1519399209, 'number': 134}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T15:29:46.603817	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/12/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519399220, 'waited_for': False, 'claimed': True, 'buildrequestid': 9297, 'builderid': 12, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519399220, 'buildsetid': 2597, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9297, 'builderid': 12, 'buildid': 6956, 'masterid': 1, 'complete': True, 'workerid': 11, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2597, 'parent_buildid': 6950, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519399220, 'sourcestamps': [{'project': '', 'revision': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 675, 'created_at': 1519399209}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'Change'], 'branch': [None, 'Build'], 'workername': ['delroth-nuc', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-intel', 'Builder'], 'got_revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6364', 'Trigger'], 'revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['delroth-nuc', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/data/buildslave/buildslave/fifoci-ogl-lin-intel', 'Worker'], 'author': ['Stenzek', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-intel', 'builderid': 12}, 'complete_at': 1519399787, 'started_at': 1519399221, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T15:27:13.704146	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/36/builds/135', 'results': 0, 'buildrequest': {'claimed_at': 1519399220, 'waited_for': False, 'claimed': True, 'buildrequestid': 9302, 'builderid': 36, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519399220, 'buildsetid': 2597, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9302, 'builderid': 36, 'buildid': 6954, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2597, 'parent_buildid': 6950, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519399220, 'sourcestamps': [{'project': '', 'revision': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 675, 'created_at': 1519399209}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [135, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-ogl-lin-mesa', 'Builder'], 'got_revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6364', 'Trigger'], 'revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-ogl-lin-mesa', 'Worker'], 'author': ['Stenzek', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-ogl-lin-mesa', 'builderid': 36}, 'complete_at': 1519399634, 'started_at': 1519399221, 'number': 135}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T15:26:33.222189	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/16/builds/134', 'results': 0, 'buildrequest': {'claimed_at': 1519399220, 'waited_for': False, 'claimed': True, 'buildrequestid': 9298, 'builderid': 16, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519399220, 'buildsetid': 2597, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9298, 'builderid': 16, 'buildid': 6955, 'masterid': 1, 'complete': True, 'workerid': 6, 'buildset': {'complete': False, 'parent_relationship': 'Triggered from', 'results': -1, 'bsid': 2597, 'parent_buildid': 6950, 'reason': "The Triggerable scheduler named 'fifoci-lin' triggered this build", 'submitted_at': 1519399220, 'sourcestamps': [{'project': '', 'revision': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 675, 'created_at': 1519399209}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'Change'], 'branch': [None, 'Build'], 'workername': ['hive', 'Worker'], 'buildnumber': [134, 'Build'], 'scheduler': ['fifoci-lin', 'Scheduler'], 'buildername': ['fifoci-sw-lin-mesa', 'Builder'], 'got_revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6364', 'Trigger'], 'revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'Build'], 'project': ['', 'Build'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['hive', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['/home/buildslave/slave/fifoci-sw-lin-mesa', 'Worker'], 'author': ['Stenzek', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'fifoci-sw-lin-mesa', 'builderid': 16}, 'complete_at': 1519399593, 'started_at': 1519399221, 'number': 134}, 'type': 'raw_bb_hook', 'source': 'webserver'}
2018-02-23T15:23:11.048552	{'raw': {'state_string': 'build successful', 'url': 'https://buildbot.dolphin-emu.org/#builders/25/builds/111', 'results': 0, 'buildrequest': {'claimed_at': 1519399313, 'waited_for': False, 'claimed': True, 'buildrequestid': 9305, 'builderid': 25, 'complete': False, 'results': -1, 'priority': 0, 'submitted_at': 1519399313, 'buildsetid': 2600, 'claimed_by_masterid': 1, 'complete_at': None}, 'buildrequestid': 9305, 'builderid': 25, 'buildid': 6958, 'masterid': 1, 'complete': True, 'workerid': 4, 'buildset': {'complete': False, 'parent_relationship': None, 'results': -1, 'bsid': 2600, 'parent_buildid': None, 'reason': 'downstream', 'submitted_at': 1519399313, 'sourcestamps': [{'project': '', 'revision': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'repository': '', 'codebase': '', 'patch': None, 'branch': None, 'ssid': 675, 'created_at': 1519399209}], 'external_idstring': None, 'complete_at': None}, 'properties': {'description': ['Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'Change'], 'branch': [None, 'Build'], 'workername': ['windows', 'Worker'], 'buildnumber': [111, 'Build'], 'scheduler': ['win64-debug', 'Scheduler'], 'buildername': ['debug-win-x64', 'Builder'], 'got_revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'GitNoBranch'], 'branchname': ['master', 'Change'], 'shortrev': ['5.0-6364', 'Change'], 'revision': ['a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'Build'], 'project': ['', 'Build'], 'build_url': ['https://dl.dolphin-emu.org/builds/dolphin-master-5.0-6364-dbg-x64.7z', 'SetProperty'], 'warnings-count': [0, 'WarningCountingShellCommand'], 'slavename': ['windows', 'Worker (deprecated)'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'builddir': ['C:\\buildbot\\debug-win-x64', 'Worker'], 'author': ['Stenzek', 'Change']}, 'builder': {'tags': [], 'description': None, 'masterids': [1], 'name': 'debug-win-x64', 'builderid': 25}, 'complete_at': 1519399391, 'started_at': 1519399314, 'number': 111}, 'type': 'raw_bb_hook', 'source': 'webserver'}

Recent 'raw_gh_hook' events

2018-02-23T17:18:23.311308	{'raw': {'after': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'sender': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'deleted': False, 'before': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'ref': 'refs/heads/master', 'forced': False, 'base_ref': None, 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/FramebufferManager.cpp', 'Source/Core/VideoBackends/OGL/PostProcessing.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/RasterFont.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/TextureCache.cpp', 'Source/Core/VideoBackends/OGL/TextureConverter.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/3fd4142f361bd6af2c147faf48e1d1d62d170067', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'OGL: Track state of last bound vertex array object\n\nThis reduces the overhead of calling glBindVertexArray() every time\nRestoreAPIState() is called, even when it is redundant.', 'added': [], 'id': '3fd4142f361bd6af2c147faf48e1d1d62d170067', 'timestamp': '2018-02-22T19:08:52+10:00', 'tree_id': '824e1fe80fab472c0073232ac7580a4132ce3e9a'}, {'modified': ['Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/052d78bcb1bfafb2b4d17775ae0070496ba9e3ea', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'OGL: Log warnings from shader compiles, even if it compiled successfully', 'added': [], 'id': '052d78bcb1bfafb2b4d17775ae0070496ba9e3ea', 'timestamp': '2018-02-22T19:08:54+10:00', 'tree_id': 'd2ac6c49c34e664d829c5f9e94eaa2d1f2bd2cd1'}, {'modified': ['Source/Core/Common/GL/GLUtil.cpp', 'Source/Core/Common/GL/GLUtil.h', 'Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/aaea515d71354074cc26b22ddb8ad97786ed1c44', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'GLUtil: Drop now-unused attributeless VAO helpers', 'added': [], 'id': 'aaea515d71354074cc26b22ddb8ad97786ed1c44', 'timestamp': '2018-02-22T19:09:28+10:00', 'tree_id': '68decef0514ab744399fe7ce3046737d2afb3a49'}, {'modified': ['Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DShader.cpp', 'Source/Core/VideoBackends/D3D/D3DShader.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e8ff2b2006197b40bdbc89179e0912c432ed0984', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'D3D: Support compiling compute shaders', 'added': [], 'id': 'e8ff2b2006197b40bdbc89179e0912c432ed0984', 'timestamp': '2018-02-22T19:11:25+10:00', 'tree_id': '285e08cbf6ddb459f07bf73640b90d79284922cf'}, {'modified': ['Source/Core/VideoBackends/D3D/D3DState.h'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/e18c7b1c335c23f850c3bf3662c2bff15eae6518', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'D3D: Support state tracking of compute shaders', 'added': [], 'id': 'e18c7b1c335c23f850c3bf3662c2bff15eae6518', 'timestamp': '2018-02-22T19:11:27+10:00', 'tree_id': '0499ca0314633fb90091354e568571fdf7f2f4cb'}, {'modified': ['Source/Core/VideoBackends/D3D/D3DState.cpp', 'Source/Core/VideoBackends/D3D/D3DState.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/31111ef1432bc5d6d653fbef175e8ca3ac2c152d', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'D3D: Remove state stack from tracker, set explicitly instead', 'added': [], 'id': '31111ef1432bc5d6d653fbef175e8ca3ac2c152d', 'timestamp': '2018-02-22T19:40:55+10:00', 'tree_id': '626b03faaf6fca9ba778aca5f096ef43d83fadc0'}, {'modified': ['Source/Core/VideoBackends/D3D/CMakeLists.txt', 'Source/Core/VideoBackends/D3D/D3D.vcxproj', 'Source/Core/VideoBackends/D3D/D3D.vcxproj.filters', 'Source/Core/VideoBackends/D3D/NativeVertexFormat.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/VertexManager.h', 'Source/Core/VideoBackends/D3D/VertexShaderCache.cpp', 'Source/Core/VideoBackends/Null/Render.cpp', 'Source/Core/VideoBackends/Null/Render.h', 'Source/Core/VideoBackends/OGL/CMakeLists.txt', 'Source/Core/VideoBackends/OGL/OGL.vcxproj', 'Source/Core/VideoBackends/OGL/OGL.vcxproj.filters', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/OGL/VertexManager.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.h', 'Source/Core/VideoBackends/Software/SWRenderer.cpp', 'Source/Core/VideoBackends/Software/SWRenderer.h', 'Source/Core/VideoBackends/Vulkan/CMakeLists.txt', 'Source/Core/VideoBackends/Vulkan/Constants.h', 'Source/Core/VideoBackends/Vulkan/ObjectCache.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/StateTracker.cpp', 'Source/Core/VideoBackends/Vulkan/StateTracker.h', 'Source/Core/VideoBackends/Vulkan/Util.cpp', 'Source/Core/VideoBackends/Vulkan/Vulkan.vcxproj', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VideoCommon.vcxproj', 'Source/Core/VideoCommon/VideoCommon.vcxproj.filters'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'VideoBackends: Add AbstractShader and AbstractPipeline classes', 'added': ['Source/Core/VideoBackends/D3D/DXPipeline.cpp', 'Source/Core/VideoBackends/D3D/DXPipeline.h', 'Source/Core/VideoBackends/D3D/DXShader.cpp', 'Source/Core/VideoBackends/D3D/DXShader.h', 'Source/Core/VideoBackends/OGL/OGLPipeline.cpp', 'Source/Core/VideoBackends/OGL/OGLPipeline.h', 'Source/Core/VideoBackends/OGL/OGLShader.cpp', 'Source/Core/VideoBackends/OGL/OGLShader.h', 'Source/Core/VideoBackends/Vulkan/VKPipeline.cpp', 'Source/Core/VideoBackends/Vulkan/VKPipeline.h', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.h', 'Source/Core/VideoCommon/AbstractPipeline.h', 'Source/Core/VideoCommon/AbstractShader.h'], 'id': 'fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'timestamp': '2018-02-22T22:02:34+10:00', 'tree_id': 'f484dbc96cc5bdc49282a63b973c98e93ec2bfad'}, {'modified': ['Source/Core/Common/GL/GLUtil.cpp', 'Source/Core/Common/GL/GLUtil.h', 'Source/Core/VideoBackends/D3D/CMakeLists.txt', 'Source/Core/VideoBackends/D3D/D3D.vcxproj', 'Source/Core/VideoBackends/D3D/D3D.vcxproj.filters', 'Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DShader.cpp', 'Source/Core/VideoBackends/D3D/D3DShader.h', 'Source/Core/VideoBackends/D3D/D3DState.cpp', 'Source/Core/VideoBackends/D3D/D3DState.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/NativeVertexFormat.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/VertexManager.h', 'Source/Core/VideoBackends/D3D/VertexShaderCache.cpp', 'Source/Core/VideoBackends/Null/Render.cpp', 'Source/Core/VideoBackends/Null/Render.h', 'Source/Core/VideoBackends/OGL/CMakeLists.txt', 'Source/Core/VideoBackends/OGL/FramebufferManager.cpp', 'Source/Core/VideoBackends/OGL/OGL.vcxproj', 'Source/Core/VideoBackends/OGL/OGL.vcxproj.filters', 'Source/Core/VideoBackends/OGL/PostProcessing.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/RasterFont.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/OGL/TextureCache.cpp', 'Source/Core/VideoBackends/OGL/TextureConverter.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.h', 'Source/Core/VideoBackends/Software/SWRenderer.cpp', 'Source/Core/VideoBackends/Software/SWRenderer.h', 'Source/Core/VideoBackends/Vulkan/CMakeLists.txt', 'Source/Core/VideoBackends/Vulkan/Constants.h', 'Source/Core/VideoBackends/Vulkan/ObjectCache.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/StateTracker.cpp', 'Source/Core/VideoBackends/Vulkan/StateTracker.h', 'Source/Core/VideoBackends/Vulkan/Util.cpp', 'Source/Core/VideoBackends/Vulkan/Vulkan.vcxproj', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VideoCommon.vcxproj', 'Source/Core/VideoCommon/VideoCommon.vcxproj.filters'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'added': ['Source/Core/VideoBackends/D3D/DXPipeline.cpp', 'Source/Core/VideoBackends/D3D/DXPipeline.h', 'Source/Core/VideoBackends/D3D/DXShader.cpp', 'Source/Core/VideoBackends/D3D/DXShader.h', 'Source/Core/VideoBackends/OGL/OGLPipeline.cpp', 'Source/Core/VideoBackends/OGL/OGLPipeline.h', 'Source/Core/VideoBackends/OGL/OGLShader.cpp', 'Source/Core/VideoBackends/OGL/OGLShader.h', 'Source/Core/VideoBackends/Vulkan/VKPipeline.cpp', 'Source/Core/VideoBackends/Vulkan/VKPipeline.h', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.h', 'Source/Core/VideoCommon/AbstractPipeline.h', 'Source/Core/VideoCommon/AbstractShader.h'], 'id': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'timestamp': '2018-02-23T09:18:19-08:00', 'tree_id': '11876004e4d5c0536a2382a9d7fd380488d47fbe'}], 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'compare': 'https://github.com/dolphin-emu/dolphin/compare/a62343bd4fe2...b66f96c617c8', 'pusher': {'email': 'Helios747@users.noreply.github.com', 'name': 'Helios747'}, 'created': False, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': 1519406300, 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 133, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'email': '', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'name': 'dolphin-emu', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': 1374484077, 'fork': False, 'organization': 'dolphin-emu', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'master_branch': 'master', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355330, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://github.com/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 133, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'stargazers': 4119, 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'head_commit': {'modified': ['Source/Core/Common/GL/GLUtil.cpp', 'Source/Core/Common/GL/GLUtil.h', 'Source/Core/VideoBackends/D3D/CMakeLists.txt', 'Source/Core/VideoBackends/D3D/D3D.vcxproj', 'Source/Core/VideoBackends/D3D/D3D.vcxproj.filters', 'Source/Core/VideoBackends/D3D/D3DBase.cpp', 'Source/Core/VideoBackends/D3D/D3DBase.h', 'Source/Core/VideoBackends/D3D/D3DShader.cpp', 'Source/Core/VideoBackends/D3D/D3DShader.h', 'Source/Core/VideoBackends/D3D/D3DState.cpp', 'Source/Core/VideoBackends/D3D/D3DState.h', 'Source/Core/VideoBackends/D3D/D3DUtil.cpp', 'Source/Core/VideoBackends/D3D/NativeVertexFormat.cpp', 'Source/Core/VideoBackends/D3D/Render.cpp', 'Source/Core/VideoBackends/D3D/Render.h', 'Source/Core/VideoBackends/D3D/VertexManager.h', 'Source/Core/VideoBackends/D3D/VertexShaderCache.cpp', 'Source/Core/VideoBackends/Null/Render.cpp', 'Source/Core/VideoBackends/Null/Render.h', 'Source/Core/VideoBackends/OGL/CMakeLists.txt', 'Source/Core/VideoBackends/OGL/FramebufferManager.cpp', 'Source/Core/VideoBackends/OGL/OGL.vcxproj', 'Source/Core/VideoBackends/OGL/OGL.vcxproj.filters', 'Source/Core/VideoBackends/OGL/PostProcessing.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.cpp', 'Source/Core/VideoBackends/OGL/ProgramShaderCache.h', 'Source/Core/VideoBackends/OGL/RasterFont.cpp', 'Source/Core/VideoBackends/OGL/Render.cpp', 'Source/Core/VideoBackends/OGL/Render.h', 'Source/Core/VideoBackends/OGL/TextureCache.cpp', 'Source/Core/VideoBackends/OGL/TextureConverter.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.cpp', 'Source/Core/VideoBackends/OGL/VertexManager.h', 'Source/Core/VideoBackends/Software/SWRenderer.cpp', 'Source/Core/VideoBackends/Software/SWRenderer.h', 'Source/Core/VideoBackends/Vulkan/CMakeLists.txt', 'Source/Core/VideoBackends/Vulkan/Constants.h', 'Source/Core/VideoBackends/Vulkan/ObjectCache.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.cpp', 'Source/Core/VideoBackends/Vulkan/Renderer.h', 'Source/Core/VideoBackends/Vulkan/StateTracker.cpp', 'Source/Core/VideoBackends/Vulkan/StateTracker.h', 'Source/Core/VideoBackends/Vulkan/Util.cpp', 'Source/Core/VideoBackends/Vulkan/Vulkan.vcxproj', 'Source/Core/VideoCommon/RenderBase.h', 'Source/Core/VideoCommon/VideoCommon.vcxproj', 'Source/Core/VideoCommon/VideoCommon.vcxproj.filters'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'Helios747', 'email': 'Helios747@users.noreply.github.com', 'name': 'Anthony'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #6042 from stenzek/videocommon-pipelines\n\nVideoCommon pipelines ("Abstract Pipeline")', 'added': ['Source/Core/VideoBackends/D3D/DXPipeline.cpp', 'Source/Core/VideoBackends/D3D/DXPipeline.h', 'Source/Core/VideoBackends/D3D/DXShader.cpp', 'Source/Core/VideoBackends/D3D/DXShader.h', 'Source/Core/VideoBackends/OGL/OGLPipeline.cpp', 'Source/Core/VideoBackends/OGL/OGLPipeline.h', 'Source/Core/VideoBackends/OGL/OGLShader.cpp', 'Source/Core/VideoBackends/OGL/OGLShader.h', 'Source/Core/VideoBackends/Vulkan/VKPipeline.cpp', 'Source/Core/VideoBackends/Vulkan/VKPipeline.h', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.h', 'Source/Core/VideoCommon/AbstractPipeline.h', 'Source/Core/VideoCommon/AbstractShader.h'], 'id': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'timestamp': '2018-02-23T09:18:19-08:00', 'tree_id': '11876004e4d5c0536a2382a9d7fd380488d47fbe'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'push'}
2018-02-23T17:18:21.320226	{'raw': {'pull_request': {'merged_at': '2018-02-23T17:18:20Z', 'requested_teams': [], 'milestone': None, 'changed_files': 61, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042/commits', 'requested_reviewers': [], 'id': 140166270, 'title': 'VideoCommon pipelines ("Abstract Pipeline")', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'fca9c28f38e46b78bf65c3b427a21560e5fb42b7', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T17:18:20Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 133, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355330, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 133, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2017-09-09T11:17:03Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042', 'closed_at': '2018-02-23T17:18:20Z', 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6042.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6042.patch', 'number': 6042, 'assignee': None, 'merge_commit_sha': 'b66f96c617c87d0edbc4a9cb84c8c8e18ead915c', 'mergeable': None, 'merged': True, 'commits': 7, 'comments': 3, 'deletions': 299, 'review_comments': 24, 'maintainer_can_modify': False, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6042', 'state': 'closed', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6042'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/fec6bb4d5676de8834c90d93127c1459f46f8dcb'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6042'}}, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042', 'head': {'ref': 'videocommon-pipelines', 'label': 'stenzek:videocommon-pipelines', 'sha': 'fec6bb4d5676de8834c90d93127c1459f46f8dcb', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 7, 'clone_url': 'https://github.com/stenzek/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/stenzek/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/stenzek/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/stenzek/dolphin/commits{/sha}', 'watchers': 7, 'pushed_at': '2018-02-23T15:20:18Z', 'collaborators_url': 'https://api.github.com/repos/stenzek/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/stenzek/dolphin/git/blobs{/sha}', 'archived': False, 'id': 46777992, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'has_wiki': True, 'ssh_url': 'git@github.com:stenzek/dolphin.git', 'comments_url': 'https://api.github.com/repos/stenzek/dolphin/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/stenzek/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/stenzek/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/stenzek/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2015-11-24T08:34:41Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/stenzek/dolphin/merges', 'tags_url': 'https://api.github.com/repos/stenzek/dolphin/tags', 'trees_url': 'https://api.github.com/repos/stenzek/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/stenzek/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/stenzek/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/stenzek/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/stenzek/dolphin/branches{/branch}', 'git_url': 'git://github.com/stenzek/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/stenzek/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/stenzek/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/stenzek/dolphin/teams', 'size': 319949, 'private': False, 'keys_url': 'https://api.github.com/repos/stenzek/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/stenzek/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/stenzek/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/stenzek/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 7, 'milestones_url': 'https://api.github.com/repos/stenzek/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/stenzek/dolphin/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/stenzek/dolphin', 'forks_count': 0, 'url': 'https://api.github.com/repos/stenzek/dolphin', 'subscription_url': 'https://api.github.com/repos/stenzek/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/stenzek/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/stenzek/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/stenzek/dolphin', 'pulls_url': 'https://api.github.com/repos/stenzek/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/stenzek/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/stenzek/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/stenzek/dolphin/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/stenzek/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/stenzek/dolphin/deployments', 'full_name': 'stenzek/dolphin', 'hooks_url': 'https://api.github.com/repos/stenzek/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/stenzek/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2017-11-29T12:13:32Z'}, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}}, 'additions': 2085, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6042/comments', 'assignees': [], 'body': 'This PR adds support for "abstract pipelines", graphics configurations which can be drawn from videocommon. ~~Depends on PR #5343 for the state structures.~~\r\n\r\nThe eventual is to use it for all graphics drawing, replacing backend-specific shaders/programs. Currently, support is only implemented for "utility" pipelines. This is the first stage, next we can replace the various shaders currently in the backend with these pipelines (e.g. texture conversion, EFB copies, post-processing).\r\n\r\n- [x] Graphics pipeline support\r\n- [x] Compute pipeline support\r\n- [x] Utility pipeline/shader drawing\r\n- [x] Replace backend raster font with VideoCommon implementation\r\n\r\nThe next stages, replacing the shaders, will be a separate PR, to make reviewing/testing easier.\r\n\r\nThe line count looks kinda scary at the moment due to the amount of duplicated functionality. Once we drop the backend-specific code, it will drop significantly. :)', 'updated_at': '2018-02-23T17:18:20Z'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T17:18:20Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 133, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355330, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 133, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/Helios747/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/Helios747', 'followers_url': 'https://api.github.com/users/Helios747/followers', 'login': 'Helios747', 'repos_url': 'https://api.github.com/users/Helios747/repos', 'gists_url': 'https://api.github.com/users/Helios747/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/Helios747/events{/privacy}', 'organizations_url': 'https://api.github.com/users/Helios747/orgs', 'received_events_url': 'https://api.github.com/users/Helios747/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/6785841?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/Helios747/following{/other_user}', 'id': 6785841, 'subscriptions_url': 'https://api.github.com/users/Helios747/subscriptions', 'html_url': 'https://github.com/Helios747'}, 'action': 'closed', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 6042}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T15:19:35.526306	{'raw': {'after': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'deleted': False, 'before': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'ref': 'refs/heads/master', 'forced': False, 'base_ref': None, 'commits': [{'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'committer': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'author': {'username': 'stenzek', 'email': 'stenzek@gmail.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'OGL: Call GLInterface->Update() on window resize\n\nmacOS in particular requires the context be updated manually when the window\nis resized.', 'added': [], 'id': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'timestamp': '2018-02-23T22:27:10+10:00', 'tree_id': 'a8537b54a4770c3a49aa85dd91df86632fb0e854'}, {'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'stenzek', 'email': 'stenzek@users.noreply.github.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'added': [], 'id': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'timestamp': '2018-02-24T01:19:33+10:00', 'tree_id': 'a8537b54a4770c3a49aa85dd91df86632fb0e854'}], 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'compare': 'https://github.com/dolphin-emu/dolphin/compare/c08f6f0c5335...a62343bd4fe2', 'pusher': {'email': 'stenzek@users.noreply.github.com', 'name': 'stenzek'}, 'created': False, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': 1519399174, 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'email': '', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'name': 'dolphin-emu', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': 1374484077, 'fork': False, 'organization': 'dolphin-emu', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'master_branch': 'master', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://github.com/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'stargazers': 4119, 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'head_commit': {'modified': ['Source/Core/VideoBackends/OGL/Render.cpp'], 'url': 'https://github.com/dolphin-emu/dolphin/commit/a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'stenzek', 'email': 'stenzek@users.noreply.github.com', 'name': 'Stenzek'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #6394 from stenzek/macos-resize\n\nOGL: Call GLInterface->Update() on window resize', 'added': [], 'id': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'timestamp': '2018-02-24T01:19:33+10:00', 'tree_id': 'a8537b54a4770c3a49aa85dd91df86632fb0e854'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'push'}
2018-02-23T15:19:35.279109	{'raw': {'pull_request': {'merged_at': '2018-02-23T15:19:34Z', 'requested_teams': [], 'milestone': None, 'changed_files': 1, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits', 'requested_reviewers': [], 'id': 170999260, 'title': 'OGL: Call GLInterface->Update() on window resize', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T15:19:34Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-23T12:03:57Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'closed_at': '2018-02-23T15:19:34Z', 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'number': 6394, 'assignee': None, 'merge_commit_sha': 'a62343bd4fe2ea425b8543d60922bb3d54d39ab2', 'mergeable': None, 'merged': True, 'commits': 1, 'comments': 2, 'deletions': 0, 'review_comments': 0, 'maintainer_can_modify': False, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'state': 'closed', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/2ba8f67feb43e08a6734e32fdf2a409fa33f6270'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394'}}, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'head': {'ref': 'macos-resize', 'label': 'stenzek:macos-resize', 'sha': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 7, 'clone_url': 'https://github.com/stenzek/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/stenzek/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/stenzek/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/stenzek/dolphin/commits{/sha}', 'watchers': 7, 'pushed_at': '2018-02-23T15:13:06Z', 'collaborators_url': 'https://api.github.com/repos/stenzek/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/stenzek/dolphin/git/blobs{/sha}', 'archived': False, 'id': 46777992, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'has_wiki': True, 'ssh_url': 'git@github.com:stenzek/dolphin.git', 'comments_url': 'https://api.github.com/repos/stenzek/dolphin/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/stenzek/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/stenzek/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/stenzek/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2015-11-24T08:34:41Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/stenzek/dolphin/merges', 'tags_url': 'https://api.github.com/repos/stenzek/dolphin/tags', 'trees_url': 'https://api.github.com/repos/stenzek/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/stenzek/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/stenzek/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/stenzek/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/stenzek/dolphin/branches{/branch}', 'git_url': 'git://github.com/stenzek/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/stenzek/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/stenzek/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/stenzek/dolphin/teams', 'size': 319889, 'private': False, 'keys_url': 'https://api.github.com/repos/stenzek/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/stenzek/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/stenzek/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/stenzek/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 7, 'milestones_url': 'https://api.github.com/repos/stenzek/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/stenzek/dolphin/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/stenzek/dolphin', 'forks_count': 0, 'url': 'https://api.github.com/repos/stenzek/dolphin', 'subscription_url': 'https://api.github.com/repos/stenzek/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/stenzek/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/stenzek/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/stenzek/dolphin', 'pulls_url': 'https://api.github.com/repos/stenzek/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/stenzek/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/stenzek/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/stenzek/dolphin/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/stenzek/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/stenzek/dolphin/deployments', 'full_name': 'stenzek/dolphin', 'hooks_url': 'https://api.github.com/repos/stenzek/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/stenzek/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2017-11-29T12:13:32Z'}, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}}, 'additions': 1, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments', 'assignees': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'updated_at': '2018-02-23T15:19:34Z'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T15:19:34Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'closed', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 6394}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T14:09:51.356605	{'raw': {'pull_request': {'merged_at': '2018-02-23T14:09:50Z', 'requested_teams': [], 'milestone': None, 'changed_files': 1, 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/commits', 'requested_reviewers': [], 'id': 171023094, 'title': 'Buildbot: Work around hdiutil bug', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'repo': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-23T14:09:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 9, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 398, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 9, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-23T14:08:08Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95', 'closed_at': '2018-02-23T14:09:50Z', 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/sadm/pull/95.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'patch_url': 'https://github.com/dolphin-emu/sadm/pull/95.patch', 'number': 95, 'assignee': None, 'merge_commit_sha': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'mergeable': None, 'merged': True, 'commits': 1, 'comments': 0, 'deletions': 2, 'review_comments': 0, 'maintainer_can_modify': False, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/sadm/pull/95', 'state': 'closed', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/sadm/pull/95'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/46d3c0923dea356a04ae5a6e485550a7ddfb8362'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95'}}, 'url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95', 'head': {'ref': 'fix_osx', 'label': 'spycrab:fix_osx', 'sha': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'repo': {'license': None, 'stargazers_count': 0, 'clone_url': 'https://github.com/spycrab/sadm.git', 'git_commits_url': 'https://api.github.com/repos/spycrab/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/spycrab/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/spycrab/sadm/commits{/sha}', 'watchers': 0, 'pushed_at': '2018-02-23T14:07:07Z', 'collaborators_url': 'https://api.github.com/repos/spycrab/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/spycrab/sadm/git/blobs{/sha}', 'archived': False, 'id': 119361704, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'has_wiki': True, 'ssh_url': 'git@github.com:spycrab/sadm.git', 'comments_url': 'https://api.github.com/repos/spycrab/sadm/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/spycrab/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/spycrab/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/spycrab/sadm/stargazers', 'name': 'sadm', 'created_at': '2018-01-29T09:32:14Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/spycrab/sadm/merges', 'tags_url': 'https://api.github.com/repos/spycrab/sadm/tags', 'trees_url': 'https://api.github.com/repos/spycrab/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/spycrab/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/spycrab/sadm/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/spycrab/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/spycrab/sadm/branches{/branch}', 'git_url': 'git://github.com/spycrab/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/spycrab/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/spycrab/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/spycrab/sadm/teams', 'size': 397, 'private': False, 'keys_url': 'https://api.github.com/repos/spycrab/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/spycrab/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/spycrab/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/spycrab/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 0, 'milestones_url': 'https://api.github.com/repos/spycrab/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/spycrab/sadm/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/spycrab/sadm', 'forks_count': 0, 'url': 'https://api.github.com/repos/spycrab/sadm', 'subscription_url': 'https://api.github.com/repos/spycrab/sadm/subscription', 'forks_url': 'https://api.github.com/repos/spycrab/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/spycrab/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/spycrab/sadm', 'pulls_url': 'https://api.github.com/repos/spycrab/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/spycrab/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/spycrab/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/spycrab/sadm/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/spycrab/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/spycrab/sadm/deployments', 'full_name': 'spycrab/sadm', 'hooks_url': 'https://api.github.com/repos/spycrab/sadm/hooks', 'releases_url': 'https://api.github.com/repos/spycrab/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2018-01-29T09:32:16Z'}, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}}, 'additions': 9, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/comments', 'assignees': [], 'body': '', 'updated_at': '2018-02-23T14:09:50Z'}, 'repository': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-23T14:09:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 9, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 398, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 9, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'sender': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'action': 'closed', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 95}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T14:09:51.314793	{'raw': {'after': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'sender': {'starred_url': 'https://api.github.com/users/delroth/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/delroth', 'followers_url': 'https://api.github.com/users/delroth/followers', 'login': 'delroth', 'repos_url': 'https://api.github.com/users/delroth/repos', 'gists_url': 'https://api.github.com/users/delroth/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/delroth/events{/privacy}', 'organizations_url': 'https://api.github.com/users/delroth/orgs', 'received_events_url': 'https://api.github.com/users/delroth/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/202798?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/delroth/following{/other_user}', 'id': 202798, 'subscriptions_url': 'https://api.github.com/users/delroth/subscriptions', 'html_url': 'https://github.com/delroth'}, 'deleted': False, 'before': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'ref': 'refs/heads/master', 'forced': False, 'base_ref': None, 'commits': [{'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'committer': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'author': {'username': 'spycrab', 'email': 'spycrab@users.noreply.github.com', 'name': 'spycrab'}, 'distinct': True, 'removed': [], 'message': 'Buildbot: Work around hdiutil bug', 'added': [], 'id': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'timestamp': '2018-02-23T15:06:13+01:00', 'tree_id': '188c16a0850976cc3678dda49935ccfbcc1978cd'}, {'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #95 from spycrab/fix_osx\n\nBuildbot: Work around hdiutil bug', 'added': [], 'id': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'timestamp': '2018-02-23T15:09:49+01:00', 'tree_id': '188c16a0850976cc3678dda49935ccfbcc1978cd'}], 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'compare': 'https://github.com/dolphin-emu/sadm/compare/6622d20018b3...13469ca48ab6', 'pusher': {'email': 'delroth@gmail.com', 'name': 'delroth'}, 'created': False, 'repository': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': 1519394990, 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 9, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'email': '', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'name': 'dolphin-emu', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': 1374271625, 'fork': False, 'organization': 'dolphin-emu', 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'master_branch': 'master', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 398, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://github.com/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 9, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'stargazers': 15, 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'head_commit': {'modified': ['buildbot/master.cfg'], 'url': 'https://github.com/dolphin-emu/sadm/commit/13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'committer': {'username': 'web-flow', 'email': 'noreply@github.com', 'name': 'GitHub'}, 'author': {'username': 'delroth', 'email': 'delroth@gmail.com', 'name': 'Pierre Bourdon'}, 'distinct': True, 'removed': [], 'message': 'Merge pull request #95 from spycrab/fix_osx\n\nBuildbot: Work around hdiutil bug', 'added': [], 'id': '13469ca48ab691163fe2fcaaf600f1d20af4a8ce', 'timestamp': '2018-02-23T15:09:49+01:00', 'tree_id': '188c16a0850976cc3678dda49935ccfbcc1978cd'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'push'}
2018-02-23T14:08:09.606791	{'raw': {'pull_request': {'merged_at': None, 'requested_teams': [], 'milestone': None, 'changed_files': 1, 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/commits', 'requested_reviewers': [], 'id': 171023094, 'title': 'Buildbot: Work around hdiutil bug', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': '6622d20018b3bf29ed7adfd5a3dbe3398dfd2436', 'repo': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-22T22:29:19Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 10, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 398, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 10, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': None, 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-23T14:08:08Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95', 'closed_at': None, 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/sadm/pull/95.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'patch_url': 'https://github.com/dolphin-emu/sadm/pull/95.patch', 'number': 95, 'assignee': None, 'merge_commit_sha': None, 'mergeable': None, 'merged': False, 'commits': 1, 'comments': 0, 'deletions': 2, 'review_comments': 0, 'maintainer_can_modify': True, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/sadm/pull/95', 'state': 'open', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/sadm/pull/95'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/46d3c0923dea356a04ae5a6e485550a7ddfb8362'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/sadm/issues/95'}}, 'url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95', 'head': {'ref': 'fix_osx', 'label': 'spycrab:fix_osx', 'sha': '46d3c0923dea356a04ae5a6e485550a7ddfb8362', 'repo': {'license': None, 'stargazers_count': 0, 'clone_url': 'https://github.com/spycrab/sadm.git', 'git_commits_url': 'https://api.github.com/repos/spycrab/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/spycrab/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/spycrab/sadm/commits{/sha}', 'watchers': 0, 'pushed_at': '2018-02-23T14:07:07Z', 'collaborators_url': 'https://api.github.com/repos/spycrab/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/spycrab/sadm/git/blobs{/sha}', 'archived': False, 'id': 119361704, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'has_wiki': True, 'ssh_url': 'git@github.com:spycrab/sadm.git', 'comments_url': 'https://api.github.com/repos/spycrab/sadm/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/spycrab/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/spycrab/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/spycrab/sadm/stargazers', 'name': 'sadm', 'created_at': '2018-01-29T09:32:14Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/spycrab/sadm/merges', 'tags_url': 'https://api.github.com/repos/spycrab/sadm/tags', 'trees_url': 'https://api.github.com/repos/spycrab/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/spycrab/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/spycrab/sadm/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/spycrab/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/spycrab/sadm/branches{/branch}', 'git_url': 'git://github.com/spycrab/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/spycrab/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/spycrab/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/spycrab/sadm/teams', 'size': 397, 'private': False, 'keys_url': 'https://api.github.com/repos/spycrab/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/spycrab/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/spycrab/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/spycrab/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 0, 'milestones_url': 'https://api.github.com/repos/spycrab/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/spycrab/sadm/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/spycrab/sadm', 'forks_count': 0, 'url': 'https://api.github.com/repos/spycrab/sadm', 'subscription_url': 'https://api.github.com/repos/spycrab/sadm/subscription', 'forks_url': 'https://api.github.com/repos/spycrab/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/spycrab/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/spycrab/sadm', 'pulls_url': 'https://api.github.com/repos/spycrab/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/spycrab/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/spycrab/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/spycrab/sadm/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/spycrab/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/spycrab/sadm/deployments', 'full_name': 'spycrab/sadm', 'hooks_url': 'https://api.github.com/repos/spycrab/sadm/hooks', 'releases_url': 'https://api.github.com/repos/spycrab/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2018-01-29T09:32:16Z'}, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}}, 'additions': 9, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls/95/comments', 'assignees': [], 'body': '', 'updated_at': '2018-02-23T14:08:08Z'}, 'repository': {'license': None, 'stargazers_count': 15, 'clone_url': 'https://github.com/dolphin-emu/sadm.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/sadm/commits{/sha}', 'watchers': 15, 'pushed_at': '2018-02-22T22:29:19Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/sadm/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/blobs{/sha}', 'archived': False, 'id': 11538142, 'open_issues': 10, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/sadm.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/sadm/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/sadm/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/sadm/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/sadm/stargazers', 'name': 'sadm', 'created_at': '2013-07-19T22:07:05Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/sadm/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/sadm/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/sadm/statuses/{sha}', 'has_issues': True, 'archive_url': 'https://api.github.com/repos/dolphin-emu/sadm/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/sadm/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/sadm.git', 'description': 'Scripts and configurations for the Dolphin Emulator infrastructure', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/sadm/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/sadm/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/sadm/teams', 'size': 398, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/sadm/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/sadm/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/sadm/events', 'has_downloads': True, 'homepage': None, 'watchers_count': 15, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/sadm/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/sadm/languages', 'forks': 27, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/sadm', 'forks_count': 27, 'url': 'https://api.github.com/repos/dolphin-emu/sadm', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/sadm/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/sadm/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/sadm', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/sadm/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/sadm/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/sadm/git/tags{/sha}', 'open_issues_count': 10, 'issues_url': 'https://api.github.com/repos/dolphin-emu/sadm/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/sadm/deployments', 'full_name': 'dolphin-emu/sadm', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/sadm/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/sadm/releases{/id}', 'language': 'Python', 'updated_at': '2017-12-22T00:26:09Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'opened', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 95}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T13:34:35.086555	{'raw': {'comment': {'created_at': '2018-02-23T13:34:15Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368010149', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T13:34:15Z', 'body': '@dolphin-emu-bot rebuild', 'id': 368010149, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T13:10:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'deleted', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 15, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-23T13:34:16Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T13:34:16.739745	{'raw': {'comment': {'created_at': '2018-02-23T13:34:15Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368010149', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T13:34:15Z', 'body': '@dolphin-emu-bot rebuild', 'id': 368010149, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386#issuecomment-368010149'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T13:10:50Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**This needs thorough reviewing.**', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/labels{/name}', 'comments': 14, 'id': 298089600, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Debugger: Implement "Code" widget', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'created_at': '2018-02-18T14:40:54Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6386, 'updated_at': '2018-02-23T13:34:15Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T13:10:50.255570	{'raw': {'pull_request': {'merged_at': None, 'requested_teams': [], 'milestone': None, 'changed_files': 21, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386/commits', 'requested_reviewers': [], 'id': 169833223, 'title': 'Qt/Debugger: Implement "Code" widget', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': None, 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-18T14:40:54Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386', 'closed_at': None, 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6386.patch', 'number': 6386, 'assignee': None, 'merge_commit_sha': 'b47cefa153bea8f33f8a0db541e830fb81f48996', 'mergeable': None, 'merged': False, 'commits': 1, 'comments': 14, 'deletions': 13, 'review_comments': 12, 'maintainer_can_modify': True, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6386', 'state': 'open', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6386'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/c8ca1ed5928aeab75aa01cfff4a89969519e6e88'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6386'}}, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386', 'head': {'ref': 'qt_dbg_code', 'label': 'spycrab:qt_dbg_code', 'sha': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 0, 'clone_url': 'https://github.com/spycrab/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/spycrab/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/spycrab/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/spycrab/dolphin/commits{/sha}', 'watchers': 0, 'pushed_at': '2018-02-23T13:10:48Z', 'collaborators_url': 'https://api.github.com/repos/spycrab/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/spycrab/dolphin/git/blobs{/sha}', 'archived': False, 'id': 88349585, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'has_wiki': True, 'ssh_url': 'git@github.com:spycrab/dolphin.git', 'comments_url': 'https://api.github.com/repos/spycrab/dolphin/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/spycrab/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/spycrab/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/spycrab/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2017-04-15T13:46:17Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/spycrab/dolphin/merges', 'tags_url': 'https://api.github.com/repos/spycrab/dolphin/tags', 'trees_url': 'https://api.github.com/repos/spycrab/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/spycrab/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/spycrab/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/spycrab/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/spycrab/dolphin/branches{/branch}', 'git_url': 'git://github.com/spycrab/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/spycrab/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/spycrab/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/spycrab/dolphin/teams', 'size': 317586, 'private': False, 'keys_url': 'https://api.github.com/repos/spycrab/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/spycrab/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/spycrab/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/spycrab/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 0, 'milestones_url': 'https://api.github.com/repos/spycrab/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/spycrab/dolphin/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/spycrab/dolphin', 'forks_count': 0, 'url': 'https://api.github.com/repos/spycrab/dolphin', 'subscription_url': 'https://api.github.com/repos/spycrab/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/spycrab/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/spycrab/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/spycrab/dolphin', 'pulls_url': 'https://api.github.com/repos/spycrab/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/spycrab/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/spycrab/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/spycrab/dolphin/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/spycrab/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/spycrab/dolphin/deployments', 'full_name': 'spycrab/dolphin', 'hooks_url': 'https://api.github.com/repos/spycrab/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/spycrab/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2017-04-15T13:46:43Z'}, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}}, 'additions': 1682, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6386/comments', 'assignees': [], 'body': '**This needs thorough reviewing.**', 'updated_at': '2018-02-23T13:10:49Z'}, 'sender': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'before': 'adfd7cc2f79d8cb5f5ee82ebfec881b548433d76', 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'after': 'c8ca1ed5928aeab75aa01cfff4a89969519e6e88', 'action': 'synchronize', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 6386}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T13:04:35.057606	{'raw': {'comment': {'created_at': '2018-02-23T13:03:51Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003592', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:04:34Z', 'body': 'I can confirm that with this fix, FullScreen Mode works again on macOS!', 'id': 368003592, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'changes': {'body': {'from': 'I can confirm that FullScreen Mode works again on macOS!'}}, 'action': 'edited', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 2, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T13:04:34Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T13:03:52.063617	{'raw': {'comment': {'created_at': '2018-02-23T13:03:51Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003592', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:03:51Z', 'body': 'I can confirm that FullScreen Mode works again on macOS!', 'id': 368003592, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-368003592'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 1, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T13:03:51Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T13:02:52.736444	{'raw': {'comment': {'created_at': '2018-02-23T13:02:50Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/368003366', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T13:02:50Z', 'body': 'YES! PR #6394 works. I edited Render.cpp to add the GLInterface->Update(); code and Fullscreen mode works again properly on macOS. Thanks!', 'id': 368003366, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-368003366'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:28:08Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 5, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T13:02:50Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T12:28:08.159717	{'raw': {'pull_request': {'merged_at': None, 'requested_teams': [], 'milestone': None, 'changed_files': 1, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits', 'requested_reviewers': [], 'id': 170999260, 'title': 'OGL: Call GLInterface->Update() on window resize', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': None, 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-23T12:03:57Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'closed_at': None, 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'number': 6394, 'assignee': None, 'merge_commit_sha': '619926ce057e2afd24d17a6bc08c2fff70a9577d', 'mergeable': None, 'merged': False, 'commits': 1, 'comments': 1, 'deletions': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'state': 'open', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/2ba8f67feb43e08a6734e32fdf2a409fa33f6270'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394'}}, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'head': {'ref': 'macos-resize', 'label': 'stenzek:macos-resize', 'sha': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 7, 'clone_url': 'https://github.com/stenzek/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/stenzek/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/stenzek/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/stenzek/dolphin/commits{/sha}', 'watchers': 7, 'pushed_at': '2018-02-23T12:28:06Z', 'collaborators_url': 'https://api.github.com/repos/stenzek/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/stenzek/dolphin/git/blobs{/sha}', 'archived': False, 'id': 46777992, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'has_wiki': True, 'ssh_url': 'git@github.com:stenzek/dolphin.git', 'comments_url': 'https://api.github.com/repos/stenzek/dolphin/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/stenzek/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/stenzek/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/stenzek/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2015-11-24T08:34:41Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/stenzek/dolphin/merges', 'tags_url': 'https://api.github.com/repos/stenzek/dolphin/tags', 'trees_url': 'https://api.github.com/repos/stenzek/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/stenzek/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/stenzek/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/stenzek/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/stenzek/dolphin/branches{/branch}', 'git_url': 'git://github.com/stenzek/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/stenzek/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/stenzek/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/stenzek/dolphin/teams', 'size': 319879, 'private': False, 'keys_url': 'https://api.github.com/repos/stenzek/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/stenzek/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/stenzek/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/stenzek/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 7, 'milestones_url': 'https://api.github.com/repos/stenzek/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/stenzek/dolphin/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/stenzek/dolphin', 'forks_count': 0, 'url': 'https://api.github.com/repos/stenzek/dolphin', 'subscription_url': 'https://api.github.com/repos/stenzek/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/stenzek/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/stenzek/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/stenzek/dolphin', 'pulls_url': 'https://api.github.com/repos/stenzek/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/stenzek/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/stenzek/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/stenzek/dolphin/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/stenzek/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/stenzek/dolphin/deployments', 'full_name': 'stenzek/dolphin', 'hooks_url': 'https://api.github.com/repos/stenzek/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/stenzek/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2017-11-29T12:13:32Z'}, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}}, 'additions': 1, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments', 'assignees': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'updated_at': '2018-02-23T12:28:07Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'before': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'after': '2ba8f67feb43e08a6734e32fdf2a409fa33f6270', 'action': 'synchronize', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 6394}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T12:17:43.124695	{'raw': {'comment': {'created_at': '2018-02-23T12:17:42Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367994213', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'author_association': 'MEMBER', 'updated_at': '2018-02-23T12:17:42Z', 'body': 'LGTM', 'id': 367994213, 'user': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394#issuecomment-367994213'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/degasus/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/degasus', 'followers_url': 'https://api.github.com/users/degasus/followers', 'login': 'degasus', 'repos_url': 'https://api.github.com/users/degasus/repos', 'gists_url': 'https://api.github.com/users/degasus/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/degasus/events{/privacy}', 'organizations_url': 'https://api.github.com/users/degasus/orgs', 'received_events_url': 'https://api.github.com/users/degasus/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/2787141?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/degasus/following{/other_user}', 'id': 2787141, 'subscriptions_url': 'https://api.github.com/users/degasus/subscriptions', 'html_url': 'https://github.com/degasus'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/labels{/name}', 'comments': 0, 'id': 299690200, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'OGL: Call GLInterface->Update() on window resize', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'created_at': '2018-02-23T12:03:57Z', 'state': 'open', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'assignees': [], 'closed_at': None, 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6394, 'updated_at': '2018-02-23T12:17:42Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T12:04:39.504407	{'raw': {'comment': {'created_at': '2018-02-23T12:04:38Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367991723', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T12:04:38Z', 'body': '@gilcel should be fixed with PR #6394.', 'id': 367991723, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367991723'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-23T12:03:57Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 4, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T12:04:38Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T12:03:59.365711	{'raw': {'pull_request': {'merged_at': None, 'requested_teams': [], 'milestone': None, 'changed_files': 1, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits', 'requested_reviewers': [], 'id': 170999260, 'title': 'OGL: Call GLInterface->Update() on window resize', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'c08f6f0c5335464c70c9c5e56330baced5ba6802', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'merged_by': None, 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments', 'labels': [], 'mergeable_state': 'unknown', 'rebaseable': None, 'created_at': '2018-02-23T12:03:57Z', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394', 'closed_at': None, 'locked': False, 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.diff', 'author_association': 'CONTRIBUTOR', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6394.patch', 'number': 6394, 'assignee': None, 'merge_commit_sha': None, 'mergeable': None, 'merged': False, 'commits': 1, 'comments': 0, 'deletions': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6394', 'state': 'open', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6394'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/e594936ff7e37be6bc43aba7b6bf361a60bc8b40'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6394'}}, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394', 'head': {'ref': 'macos-resize', 'label': 'stenzek:macos-resize', 'sha': 'e594936ff7e37be6bc43aba7b6bf361a60bc8b40', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 7, 'clone_url': 'https://github.com/stenzek/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/stenzek/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/stenzek/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/stenzek/dolphin/commits{/sha}', 'watchers': 7, 'pushed_at': '2018-02-23T12:03:41Z', 'collaborators_url': 'https://api.github.com/repos/stenzek/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/stenzek/dolphin/git/blobs{/sha}', 'archived': False, 'id': 46777992, 'open_issues': 0, 'owner': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'has_wiki': True, 'ssh_url': 'git@github.com:stenzek/dolphin.git', 'comments_url': 'https://api.github.com/repos/stenzek/dolphin/comments{/number}', 'has_projects': True, 'notifications_url': 'https://api.github.com/repos/stenzek/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/stenzek/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/stenzek/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2015-11-24T08:34:41Z', 'fork': True, 'merges_url': 'https://api.github.com/repos/stenzek/dolphin/merges', 'tags_url': 'https://api.github.com/repos/stenzek/dolphin/tags', 'trees_url': 'https://api.github.com/repos/stenzek/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/stenzek/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/stenzek/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/stenzek/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/stenzek/dolphin/branches{/branch}', 'git_url': 'git://github.com/stenzek/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/stenzek/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/stenzek/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/stenzek/dolphin/teams', 'size': 319879, 'private': False, 'keys_url': 'https://api.github.com/repos/stenzek/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/stenzek/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/stenzek/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/stenzek/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 7, 'milestones_url': 'https://api.github.com/repos/stenzek/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/stenzek/dolphin/languages', 'forks': 0, 'default_branch': 'master', 'html_url': 'https://github.com/stenzek/dolphin', 'forks_count': 0, 'url': 'https://api.github.com/repos/stenzek/dolphin', 'subscription_url': 'https://api.github.com/repos/stenzek/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/stenzek/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/stenzek/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/stenzek/dolphin', 'pulls_url': 'https://api.github.com/repos/stenzek/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/stenzek/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/stenzek/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/stenzek/dolphin/git/tags{/sha}', 'open_issues_count': 0, 'issues_url': 'https://api.github.com/repos/stenzek/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/stenzek/dolphin/deployments', 'full_name': 'stenzek/dolphin', 'hooks_url': 'https://api.github.com/repos/stenzek/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/stenzek/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2017-11-29T12:13:32Z'}, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}}, 'additions': 1, 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6394/comments', 'assignees': [], 'body': 'macOS in particular requires the context be updated manually when the window is resized.', 'updated_at': '2018-02-23T12:03:57Z'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 135, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 135, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'opened', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'number': 6394}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'pull_request'}
2018-02-23T11:29:45.121497	{'raw': {'comment': {'created_at': '2018-02-23T11:29:44Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367984734', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T11:29:44Z', 'body': "Here's a screenshot of the fullscreen issue (I built and tested it with WX and QT5 5.1.0 = same problem)\r\n\r\n![dolphin-5 0-v6350-fullscreen-issue](https://user-images.githubusercontent.com/9282533/36592212-11a57bb8-1895-11e8-9f6b-a489ac657e29.png)\r\n", 'id': 367984734, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367984734'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 3, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T11:29:44Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T10:39:21.365254	{'raw': {'comment': {'created_at': '2018-02-23T10:39:20Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367973717', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T10:39:20Z', 'body': '@gilcel Thanks, I will look into it.', 'id': 367973717, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367973717'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 2, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T10:39:20Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T10:24:00.609513	{'raw': {'comment': {'created_at': '2018-02-23T10:23:59Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367970063', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'author_association': 'NONE', 'updated_at': '2018-02-23T10:23:59Z', 'body': 'Tested this commit / build 5.0-6350 on macOS 10.12+: when entering FullScreen Mode it will only display a black screen with one tile on the upper left displaying the current game.\r\nResizing back to normal window works, though.\r\nAll builds before work correctly (tested with Wii & GC games).\r\n\r\n', 'id': 367970063, 'user': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330#issuecomment-367970063'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/gilcel/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/gilcel', 'followers_url': 'https://api.github.com/users/gilcel/followers', 'login': 'gilcel', 'repos_url': 'https://api.github.com/users/gilcel/repos', 'gists_url': 'https://api.github.com/users/gilcel/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/gilcel/events{/privacy}', 'organizations_url': 'https://api.github.com/users/gilcel/orgs', 'received_events_url': 'https://api.github.com/users/gilcel/received_events', 'avatar_url': 'https://avatars3.githubusercontent.com/u/9282533?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/gilcel/following{/other_user}', 'id': 9282533, 'subscriptions_url': 'https://api.github.com/users/gilcel/subscriptions', 'html_url': 'https://github.com/gilcel'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': "Currently, our handling of surface change and resize events is kind of a mess. We have different methods depending on the selected backend, as well as platform (e.g. OpenGL on Android can handle surface changes but no other platform can). The implementation also enabled a race with the video thread, where Dolphin could render to an invalid system window surface, leading to display corruption when the surface was recreated, for example, when the phone was rotated.\r\n\r\nThe new implementation ensures all platforms behave similar in handling surface changes. Currently, the surface change is only hooked up to Qt, but on the desktop the surface will not change during runtime. However, this enables us to change the window in the future, which can enable possibilities such as toggling render-to-main-window at runtime.\r\n\r\nResize events have also been reworked, instead of relying on the polled backbuffer dimensions from GLInterface, we propogate resize events from the UI to the graphics backend, and respond accordingly. This can reduce overhead very slightly, as we no longer need to repeatedly call GetClientRect() on Windows. In X11, we still need the event loop as we're using a separate display. I'm planning on eliminating this in the future by passing the display from the UI instead, and using XCB instead.\r\n\r\nMost importantly, this should fix the bug on Android where rotating the phone or pausing/resuming, when using Vulkan, would cause the app to crash.", 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/labels{/name}', 'comments': 1, 'id': 291842258, 'user': {'starred_url': 'https://api.github.com/users/stenzek/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/stenzek', 'followers_url': 'https://api.github.com/users/stenzek/followers', 'login': 'stenzek', 'repos_url': 'https://api.github.com/users/stenzek/repos', 'gists_url': 'https://api.github.com/users/stenzek/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/stenzek/events{/privacy}', 'organizations_url': 'https://api.github.com/users/stenzek/orgs', 'received_events_url': 'https://api.github.com/users/stenzek/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/11288319?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/stenzek/following{/other_user}', 'id': 11288319, 'subscriptions_url': 'https://api.github.com/users/stenzek/subscriptions', 'html_url': 'https://github.com/stenzek'}, 'title': 'Improve handling of surface change/resize events in graphics backends', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6330/comments', 'created_at': '2018-01-26T09:25:39Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6330', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6330.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6330'}, 'assignees': [], 'closed_at': '2018-02-19T15:19:46Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6330, 'updated_at': '2018-02-23T10:23:59Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T04:47:00.060517	{'raw': {'comment': {'created_at': '2018-02-23T04:46:59Z', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/367908643', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362', 'author_association': 'CONTRIBUTOR', 'updated_at': '2018-02-23T04:46:59Z', 'body': "I'm late to the party but there's some details in [issue 8673](https://bugs.dolphin-emu.org/issues/8673) regarding the emulated IR cursor behavior...", 'id': 367908643, 'user': {'starred_url': 'https://api.github.com/users/mbc07/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mbc07', 'followers_url': 'https://api.github.com/users/mbc07/followers', 'login': 'mbc07', 'repos_url': 'https://api.github.com/users/mbc07/repos', 'gists_url': 'https://api.github.com/users/mbc07/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mbc07/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mbc07/orgs', 'received_events_url': 'https://api.github.com/users/mbc07/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8005966?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mbc07/following{/other_user}', 'id': 8005966, 'subscriptions_url': 'https://api.github.com/users/mbc07/subscriptions', 'html_url': 'https://github.com/mbc07'}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362#issuecomment-367908643'}, 'repository': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'sender': {'starred_url': 'https://api.github.com/users/mbc07/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/mbc07', 'followers_url': 'https://api.github.com/users/mbc07/followers', 'login': 'mbc07', 'repos_url': 'https://api.github.com/users/mbc07/repos', 'gists_url': 'https://api.github.com/users/mbc07/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/mbc07/events{/privacy}', 'organizations_url': 'https://api.github.com/users/mbc07/orgs', 'received_events_url': 'https://api.github.com/users/mbc07/received_events', 'avatar_url': 'https://avatars0.githubusercontent.com/u/8005966?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/mbc07/following{/other_user}', 'id': 8005966, 'subscriptions_url': 'https://api.github.com/users/mbc07/subscriptions', 'html_url': 'https://github.com/mbc07'}, 'action': 'created', 'organization': {'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'url': 'https://api.github.com/orgs/dolphin-emu', 'login': 'dolphin-emu', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'description': '', 'id': 5050316, 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}'}, 'issue': {'assignee': None, 'milestone': None, 'labels': [], 'body': '**Outdated**\r\n![Stick Indicators](https://i.imgur.com/NJ7bFpI.png)\r\n![IR Indicators](https://i.imgur.com/PdCPvj2.png)\r\n\r\nImplements the fancy controller indicators from Wx, might require some overhauls before it can get merged.', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/events', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/labels{/name}', 'comments': 15, 'id': 295222217, 'user': {'starred_url': 'https://api.github.com/users/spycrab/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/spycrab', 'followers_url': 'https://api.github.com/users/spycrab/followers', 'login': 'spycrab', 'repos_url': 'https://api.github.com/users/spycrab/repos', 'gists_url': 'https://api.github.com/users/spycrab/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/spycrab/events{/privacy}', 'organizations_url': 'https://api.github.com/users/spycrab/orgs', 'received_events_url': 'https://api.github.com/users/spycrab/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/1440715?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/spycrab/following{/other_user}', 'id': 1440715, 'subscriptions_url': 'https://api.github.com/users/spycrab/subscriptions', 'html_url': 'https://github.com/spycrab'}, 'title': 'Qt/Mapping: Implement indicators', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6362/comments', 'created_at': '2018-02-07T17:18:37Z', 'state': 'closed', 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6362', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6362.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/6362.patch', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6362'}, 'assignees': [], 'closed_at': '2018-02-18T19:45:13Z', 'locked': False, 'author_association': 'CONTRIBUTOR', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'number': 6362, 'updated_at': '2018-02-23T04:46:59Z'}}, 'type': 'raw_gh_hook', 'source': 'webserver', 'gh_type': 'issue_comment'}
2018-02-23T01:09:06.886270	{'raw': {'pull_request': {'merged_at': None, 'assignee': None, 'merge_commit_sha': 'e8f8386ea62179b3be2b4e6fe87399a532e82a04', 'milestone': None, 'state': 'open', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388/comments', 'requested_teams': [], 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388/commits', 'requested_reviewers': [], 'number': 6388, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388/comments'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/6388'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f9445bb119d08643dd364feb89bece5d5530970f'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388'}}, 'id': 170012218, 'user': {'starred_url': 'https://api.github.com/users/leoetlino/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/leoetlino', 'followers_url': 'https://api.github.com/users/leoetlino/followers', 'login': 'leoetlino', 'repos_url': 'https://api.github.com/users/leoetlino/repos', 'gists_url': 'https://api.github.com/users/leoetlino/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/leoetlino/events{/privacy}', 'organizations_url': 'https://api.github.com/users/leoetlino/orgs', 'received_events_url': 'https://api.github.com/users/leoetlino/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/4209061?v=4', 'site_admin': False, 'type': 'User', 'following_url': 'https://api.github.com/users/leoetlino/following{/other_user}', 'id': 4209061, 'subscriptions_url': 'https://api.github.com/users/leoetlino/subscriptions', 'html_url': 'https://github.com/leoetlino'}, 'title': 'Consolidate ec_wii functions into IOSC', 'base': {'ref': 'master', 'label': 'dolphin-emu:master', 'sha': 'e01fe4606858d4fa0e8800bd7afb11804902bc02', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 4119, 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'watchers': 4119, 'pushed_at': '2018-02-22T22:48:17Z', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'archived': False, 'id': 11577304, 'open_issues': 134, 'owner': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}, 'has_wiki': True, 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'has_projects': False, 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'has_pages': False, 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'name': 'dolphin', 'created_at': '2013-07-22T09:07:57Z', 'fork': False, 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'has_issues': False, 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'mirror_url': None, 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'size': 355326, 'private': False, 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'has_downloads': True, 'homepage': 'https://dolphin-emu.org/', 'watchers_count': 4119, 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'forks': 1004, 'default_branch': 'master', 'html_url': 'https://github.com/dolphin-emu/dolphin', 'forks_count': 1004, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'open_issues_count': 134, 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'full_name': 'dolphin-emu/dolphin', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'language': 'C++', 'updated_at': '2018-02-22T23:01:24Z'}, 'user': {'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'url': 'https://api.github.com/users/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'login': 'dolphin-emu', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'gravatar_id': '', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'avatar_url': 'https://avatars2.githubusercontent.com/u/5050316?v=4', 'site_admin': False, 'type': 'Organization', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'id': 5050316, 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'html_url': 'https://github.com/dolphin-emu'}}, 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/6388', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/6388', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/6388.diff', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/6388/comments', 'head': {'ref': 'merge', 'label': 'leoetlino:merge', 'sha': 'f9445bb119d08643dd364feb89bece5d5530970f', 'repo': {'license': {'url': 'https://api.github.com/licenses/gpl-2.0', 'key': 'gpl-2.0', 'name': 'GNU General Public License v2.0', 'spdx_id': 'GPL-2.0'}, 'stargazers_count': 0, 'clone_url': 'https://github.com/leoetlino/dolphin.git', 'git_commits_url': 'https://api.github.com/repos/leoetlino/dolphin/git/commits{/sha}', 'issue_events_url': 'https://api.github.com/repos/leoetlino/dolphin/issues/events{/number}', 'commits_url': 'https://api.github.com/repos/leoetlino/dolphin/commits{/sha}', 'watchers': 0, 'pushed_at': '2018-02-22T1