Status for Dolphin Central
Recent events
2026-10-25T07:20:57.502491 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'service': 'pr-fifoci-mtl-osx-m1', 'pr': 14952, 'type': 'pull_request_fifoci_status'}
2026-10-25T07:20:56.798178 {'source': 'webserver', 'raw': {'buildid': 194028, 'number': 9165, 'builderid': 21, 'buildrequestid': 194614, 'workerid': 8, 'masterid': 1, 'started_at': 1792912190, 'complete_at': 1792912843, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'buildername': ['pr-fifoci-mtl-osx-m1', 'Builder'], 'builderid': [21, 'Builder'], 'buildnumber': [9165, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'builddir': ['/Users/ci/worker/base/pr-fifoci-mtl-osx-m1', 'Worker'], 'warnings-count': [114, 'WarningCountingShellCommand'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'workername': ['osx-m1', 'Worker'], 'repository': ['', 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'got_revision': ['ca98b3030bcc70e67158ce899a5589aa2ec65d32', 'GitNoBranch']}, 'buildrequest': {'buildrequestid': 194614, 'buildsetid': 43660, 'builderid': 21, 'priority': 0, 'claimed': True, 'claimed_at': 1792912190, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 21, 'name': 'pr-fifoci-mtl-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/21/builds/9165'}, 'type': 'raw_bb_hook'}
2026-10-25T07:20:25.713138 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T07:20:25.380688 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T07:19:20.092538 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303b\ufeffrad0\x03 commented on #14903 (ArmCPUDetect: check elf_aux_info() return value in ReadHwCap): \x1f\x0302https://dolp.in/pr14903#issuecomment-6394807069\x03\x1f', 'type': 'notification'}
2026-10-25T07:19:20.092324 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'id': 5665684674, 'node_id': 'PR_kwDOALCn2M8AAAABGIm2tw', 'number': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-01T16:37:12Z', 'updated_at': '2026-10-25T07:19:18Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14903', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.patch', 'merged_at': None}, 'body': 'Handle failure explicitly instead of relying on the initial value.\r\nNo functional change.', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'id': 6394807069, 'node_id': 'IC_kwDOALCn2M8AAAABfSkDHQ', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T07:19:17Z', 'updated_at': '2026-10-25T07:19:17Z', 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'author_association': 'CONTRIBUTOR', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T07:19:20.092289 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'brad0', 'action': 'created', 'id': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'safe_author': False, 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'id': 5665684674, 'node_id': 'PR_kwDOALCn2M8AAAABGIm2tw', 'number': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-01T16:37:12Z', 'updated_at': '2026-10-25T07:19:18Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14903', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.patch', 'merged_at': None}, 'body': 'Handle failure explicitly instead of relying on the initial value.\r\nNo functional change.', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'id': 6394807069, 'node_id': 'IC_kwDOALCn2M8AAAABfSkDHQ', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T07:19:17Z', 'updated_at': '2026-10-25T07:19:17Z', 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'author_association': 'CONTRIBUTOR', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-25T07:19:04.138727 {'source': 'webserver', 'raw': {'buildid': 194029, 'number': 5457, 'builderid': 41, 'buildrequestid': 194612, 'workerid': 5, 'masterid': 1, 'started_at': 1792912738, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repository': ['', 'Build'], 'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'buildername': ['pr-fifoci-vk-lin-mesa', 'Builder'], 'builderid': [41, 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'buildnumber': [5457, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194612, 'buildsetid': 43659, 'builderid': 41, 'priority': 0, 'claimed': True, 'claimed_at': 1792912738, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911260, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43659, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792911260, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194018, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194018, 'number': 10810, 'builderid': 27, 'buildrequestid': 194604, 'workerid': 10, 'masterid': 1, 'started_at': 1792910168, 'complete_at': 1792911260, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 41, 'name': 'pr-fifoci-vk-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/41/builds/5457'}, 'type': 'raw_bb_hook'}
2026-10-25T07:18:59.035693 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'service': 'pr-fifoci-vk-lin-mesa', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T07:18:58.381781 {'source': 'webserver', 'raw': {'buildid': 194024, 'number': 5456, 'builderid': 41, 'buildrequestid': 194593, 'workerid': 5, 'masterid': 1, 'started_at': 1792911469, 'complete_at': 1792912738, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'builderid': [41, 'Builder'], 'branch': ['refs/pull/14933/head', 'Build'], 'buildername': ['pr-fifoci-vk-lin-mesa', 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['de7769', 'Trigger'], 'pr_id': [14933, 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'buildnumber': [5456, 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'branchname': ['pr-14933', 'Trigger'], 'headrev': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'basedir': ['/var/lib/fifoci-worker/worker', 'Worker'], 'got_revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'GitNoBranch'], 'warnings-count': [2, 'WarningCountingShellCommand'], 'revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Build'], 'builddir': ['/var/lib/fifoci-worker/worker/pr-fifoci-vk-lin-mesa', 'Worker']}, 'buildrequest': {'buildrequestid': 194593, 'buildsetid': 43655, 'builderid': 41, 'priority': 0, 'claimed': True, 'claimed_at': 1792911469, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792909435, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43655, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792909435, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194004, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13113, 'branch': 'refs/pull/14933/head', 'revision': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792908473, 'patch': None}]}, 'parentbuild': {'buildid': 194004, 'number': 10809, 'builderid': 27, 'buildrequestid': 194584, 'workerid': 10, 'masterid': 1, 'started_at': 1792908477, 'complete_at': 1792909435, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 41, 'name': 'pr-fifoci-vk-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/41/builds/5456'}, 'type': 'raw_bb_hook'}
2026-10-25T07:17:23.151837 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:17:21.565006 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:13:28.717584 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-dbg-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/31/builds/10818', 'description': 'Build succeeded on builder pr-win-dbg-x64', 'type': 'build_status'}
2026-10-25T07:13:28.065120 {'source': 'webserver', 'raw': {'buildid': 194027, 'number': 10818, 'builderid': 31, 'buildrequestid': 194605, 'workerid': 4, 'masterid': 1, 'started_at': 1792912071, 'complete_at': 1792912396, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'buildername': ['pr-win-dbg-x64', 'Builder'], 'builderid': [31, 'Builder'], 'workername': ['windows', 'Worker'], 'buildnumber': [10818, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['c:\\buildbot', 'Worker'], 'builddir': ['c:\\buildbot\\pr-win-dbg-x64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'sln_exists': ['false', 'SetPropertyFromCommand Step'], 'warnings-count': [7, 'WarningCountingShellCommand'], 'build_url': ['https://dl.dolphin-emu.org/prs/63/25/pr-14952-dolphin-latest-dbg-x64.7z', 'SetProperty']}, 'buildrequest': {'buildrequestid': 194605, 'buildsetid': 43658, 'builderid': 31, 'priority': 0, 'claimed': True, 'claimed_at': 1792912071, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 31, 'name': 'pr-win-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/31/builds/10818'}, 'type': 'raw_bb_hook'}
2026-10-25T07:12:21.564663 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:12:20.045073 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:11:08.487631 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-deb-dbg-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/1/builds/10809', 'description': 'Build succeeded on builder pr-deb-dbg-x64', 'type': 'build_status'}
2026-10-25T07:11:07.591771 {'source': 'webserver', 'raw': {'buildid': 194023, 'number': 10809, 'builderid': 1, 'buildrequestid': 194596, 'workerid': 9, 'masterid': 1, 'started_at': 1792911447, 'complete_at': 1792912247, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'pr_id': [14952, 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [1, 'Builder'], 'workername': ['debian', 'Worker'], 'buildnumber': [10809, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-deb-dbg-x64', 'Worker'], 'branchname': ['pr-14952', 'Change'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'buildername': ['pr-deb-dbg-x64', 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [2, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194596, 'buildsetid': 43658, 'builderid': 1, 'priority': 0, 'claimed': True, 'claimed_at': 1792911447, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 1, 'name': 'pr-deb-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/1/builds/10809'}, 'type': 'raw_bb_hook'}
2026-10-25T07:10:25.377601 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T07:10:25.067298 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T07:10:14.133252 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'service': 'pr-fifoci-mvk-osx-m1', 'pr': 14952, 'type': 'pull_request_fifoci_status'}
2026-10-25T07:10:13.461854 {'source': 'webserver', 'raw': {'buildid': 194026, 'number': 9163, 'builderid': 19, 'buildrequestid': 194613, 'workerid': 8, 'masterid': 1, 'started_at': 1792911529, 'complete_at': 1792912190, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'builderid': [19, 'Builder'], 'workername': ['osx-m1', 'Worker'], 'buildnumber': [9163, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'builddir': ['/Users/ci/worker/base/pr-fifoci-mvk-osx-m1', 'Worker'], 'got_revision': ['ca98b3030bcc70e67158ce899a5589aa2ec65d32', 'GitNoBranch'], 'warnings-count': [114, 'WarningCountingShellCommand'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'buildername': ['pr-fifoci-mvk-osx-m1', 'Builder'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build']}, 'buildrequest': {'buildrequestid': 194613, 'buildsetid': 43660, 'builderid': 19, 'priority': 0, 'claimed': True, 'claimed_at': 1792911529, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 19, 'name': 'pr-fifoci-mvk-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/19/builds/9163'}, 'type': 'raw_bb_hook'}
2026-10-25T07:10:13.450892 {'source': 'webserver', 'raw': {'buildid': 194028, 'number': 9165, 'builderid': 21, 'buildrequestid': 194614, 'workerid': 8, 'masterid': 1, 'started_at': 1792912190, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'buildername': ['pr-fifoci-mtl-osx-m1', 'Builder'], 'builderid': [21, 'Builder'], 'buildnumber': [9165, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'workername': ['osx-m1', 'Worker'], 'repository': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194614, 'buildsetid': 43660, 'builderid': 21, 'priority': 0, 'claimed': True, 'claimed_at': 1792912190, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 21, 'name': 'pr-fifoci-mtl-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/21/builds/9165'}, 'type': 'raw_bb_hook'}
2026-10-25T07:08:10.302544 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/2/builds/10811', 'description': 'Build succeeded on builder pr-win-x64', 'type': 'build_status'}
2026-10-25T07:08:09.325774 {'source': 'webserver', 'raw': {'buildid': 194025, 'number': 10811, 'builderid': 2, 'buildrequestid': 194597, 'workerid': 4, 'masterid': 1, 'started_at': 1792911520, 'complete_at': 1792912071, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'pr_id': [14952, 'Change'], 'buildername': ['pr-win-x64', 'Builder'], 'workername': ['windows', 'Worker'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'shortrev': ['fa108c', 'Change'], 'buildnumber': [10811, 'Build'], 'project': ['', 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'builderid': [2, 'Builder'], 'branch': ['refs/pull/14952/head', 'Build'], 'repository': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['c:\\buildbot', 'Worker'], 'warnings-count': [7, 'WarningCountingShellCommand'], 'build_url': ['https://dl.dolphin-emu.org/prs/c2/c9/pr-14952-dolphin-latest-x64.7z', 'SetProperty'], 'branchname': ['pr-14952', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builddir': ['c:\\buildbot\\pr-win-x64', 'Worker'], 'sln_exists': ['false', 'SetPropertyFromCommand Step']}, 'buildrequest': {'buildrequestid': 194597, 'buildsetid': 43658, 'builderid': 2, 'priority': 0, 'claimed': True, 'claimed_at': 1792911520, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 2, 'name': 'pr-win-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/2/builds/10811'}, 'type': 'raw_bb_hook'}
Recent 'build_status' events
2026-10-25T07:13:28.717584 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-dbg-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/31/builds/10818', 'description': 'Build succeeded on builder pr-win-dbg-x64', 'type': 'build_status'}
2026-10-25T07:11:08.487631 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-deb-dbg-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/1/builds/10809', 'description': 'Build succeeded on builder pr-deb-dbg-x64', 'type': 'build_status'}
2026-10-25T07:08:10.302544 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/2/builds/10811', 'description': 'Build succeeded on builder pr-win-x64', 'type': 'build_status'}
2026-10-25T07:08:09.007580 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-dbg-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/31/builds/10818', 'description': 'Auto build in progress on builder pr-win-dbg-x64', 'type': 'build_status'}
2026-10-25T07:00:22.319859 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-flatpak-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/43/builds/5958', 'description': 'Build succeeded on builder pr-flatpak-x64', 'type': 'build_status'}
2026-10-25T06:59:13.855207 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-osx-universal', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/7/builds/10828', 'description': 'Build succeeded on builder pr-osx-universal', 'type': 'build_status'}
2026-10-25T06:59:05.478217 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/2/builds/10811', 'description': 'Auto build in progress on builder pr-win-x64', 'type': 'build_status'}
2026-10-25T06:59:04.844264 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-arm64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/13/builds/10809', 'description': 'Build succeeded on builder pr-win-arm64', 'type': 'build_status'}
2026-10-25T06:58:01.893281 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-deb-dbg-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/1/builds/10809', 'description': 'Auto build in progress on builder pr-deb-dbg-x64', 'type': 'build_status'}
2026-10-25T06:58:01.203496 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-deb-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/26/builds/10808', 'description': 'Build succeeded on builder pr-deb-x64', 'type': 'build_status'}
2026-10-25T06:55:42.496229 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-appimage-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/49/builds/62', 'description': 'Build succeeded on builder pr-appimage-x64', 'type': 'build_status'}
2026-10-25T06:54:54.603406 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-ubu-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/27/builds/10810', 'description': 'Build succeeded on builder pr-ubu-x64', 'type': 'build_status'}
2026-10-25T06:54:44.380290 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-flatpak-arm64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/44/builds/5898', 'description': 'Build succeeded on builder pr-flatpak-arm64', 'type': 'build_status'}
2026-10-25T06:52:43.635362 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-android', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/22/builds/10815', 'description': 'Build succeeded on builder pr-android', 'type': 'build_status'}
2026-10-25T06:51:25.469244 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-appimage-arm64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/50/builds/56', 'description': 'Build succeeded on builder pr-appimage-arm64', 'type': 'build_status'}
2026-10-25T06:46:30.664748 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-osx-universal', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/7/builds/10828', 'description': 'Auto build in progress on builder pr-osx-universal', 'type': 'build_status'}
2026-10-25T06:45:19.428330 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-flatpak-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/43/builds/5958', 'description': 'Auto build in progress on builder pr-flatpak-x64', 'type': 'build_status'}
2026-10-25T06:45:02.092185 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'shortrev': 'de7769', 'service': 'pr-flatpak-x64', 'pr': 14933, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/43/builds/5957', 'description': 'Build succeeded on builder pr-flatpak-x64', 'type': 'build_status'}
2026-10-25T06:43:34.381412 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-win-arm64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/13/builds/10809', 'description': 'Auto build in progress on builder pr-win-arm64', 'type': 'build_status'}
2026-10-25T06:43:33.289169 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'shortrev': 'de7769', 'service': 'pr-win-dbg-x64', 'pr': 14933, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/31/builds/10817', 'description': 'Build succeeded on builder pr-win-dbg-x64', 'type': 'build_status'}
2026-10-25T06:40:42.014152 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-deb-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/26/builds/10808', 'description': 'Auto build in progress on builder pr-deb-x64', 'type': 'build_status'}
2026-10-25T06:40:12.954561 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'shortrev': 'de7769', 'service': 'pr-deb-dbg-x64', 'pr': 14933, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/1/builds/10808', 'description': 'Build succeeded on builder pr-deb-dbg-x64', 'type': 'build_status'}
2026-10-25T06:38:04.642003 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-freebsd-x64', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/11/builds/10816', 'description': 'Build succeeded on builder pr-freebsd-x64', 'type': 'build_status'}
2026-10-25T06:37:59.541932 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'lint', 'pr': 14952, 'success': True, 'pending': False, 'url': 'https://dolphin.ci/#/builders/9/builds/10813', 'description': 'Build succeeded on builder lint', 'type': 'build_status'}
2026-10-25T06:37:21.885323 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'shortrev': 'fa108c', 'service': 'pr-ubu-x64', 'pr': 14952, 'success': False, 'pending': True, 'url': 'https://dolphin.ci/#/builders/27/builds/10810', 'description': 'Auto build in progress on builder pr-ubu-x64', 'type': 'build_status'}
Recent 'command_message' events
2026-10-24T12:14:56.831368 {'source': 'discord', 'who': 'josjuice', 'what': '<@1320924779556900984> please rebuild 14878', 'type': 'command_message'}
2026-10-24T06:04:28.146473 {'source': 'discord', 'who': 'billiard26', 'what': '<@1320924779556900984> please rebuild PR 14947', 'type': 'command_message'}
2026-10-23T22:13:33.399432 {'source': 'discord', 'who': 'billiard26', 'what': '<@1320924779556900984> please rebuild PR 14947', 'type': 'command_message'}
2026-10-20T20:50:52.416011 {'source': 'discord', 'who': 'billiard26', 'what': '<@1320924779556900984> rebuild PR 14941', 'type': 'command_message'}
2026-10-19T23:31:13.450087 {'source': 'discord', 'who': 'billiard26', 'what': '<@1320924779556900984> rebuild PR 14941', 'type': 'command_message'}
2026-10-18T16:25:37.886250 {'source': 'discord', 'who': 'oatmealdome', 'what': '<@1320924779556900984> please rebuild 14924', 'type': 'command_message'}
2026-10-18T16:25:26.801035 {'source': 'discord', 'who': 'oatmealdome', 'what': '<@1320924779556900984> please rebuild 14923', 'type': 'command_message'}
2026-10-18T10:28:43.546446 {'source': 'discord', 'who': 'josjuice', 'what': '<@1320924779556900984> please rebuild 14924', 'type': 'command_message'}
2026-10-18T10:28:36.025367 {'source': 'discord', 'who': 'josjuice', 'what': '<@1320924779556900984> please rebuild 14923', 'type': 'command_message'}
2026-10-17T16:25:43.666865 {'source': 'discord', 'who': 'oatmealdome', 'what': '<@1320924779556900984> please rebuild 13099', 'type': 'command_message'}
Recent 'dev_wark' events
2026-10-24T06:04:28.146496 {'source': 'discord', 'accepted': True, 'type': 'dev_wark'}
2026-10-23T22:13:33.399466 {'source': 'discord', 'accepted': True, 'type': 'dev_wark'}
2026-10-20T20:50:52.416037 {'source': 'discord', 'accepted': True, 'type': 'dev_wark'}
2026-10-19T23:31:13.450118 {'source': 'discord', 'accepted': True, 'type': 'dev_wark'}
Recent 'gh_issue_comment' events
2026-10-25T07:19:20.092289 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'brad0', 'action': 'created', 'id': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'safe_author': False, 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'id': 5665684674, 'node_id': 'PR_kwDOALCn2M8AAAABGIm2tw', 'number': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-01T16:37:12Z', 'updated_at': '2026-10-25T07:19:18Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14903', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.patch', 'merged_at': None}, 'body': 'Handle failure explicitly instead of relying on the initial value.\r\nNo functional change.', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'id': 6394807069, 'node_id': 'IC_kwDOALCn2M8AAAABfSkDHQ', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T07:19:17Z', 'updated_at': '2026-10-25T07:19:17Z', 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'author_association': 'CONTRIBUTOR', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-25T07:00:02.698360 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14783, 'title': 'Remove unused includes', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14783#issuecomment-6394641608', 'safe_author': True, 'body': 'Sorry, this has aged a bit.\r\nCan you please rebase this in case some of the later merged stuff would fail to build with the removed includes.', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783', 'id': 5039143901, 'node_id': 'PR_kwDOALCn2M75es3u', 'number': 14783, 'title': 'Remove unused includes', 'user': {'login': 'tygyh', 'id': 32486062, 'node_id': 'MDQ6VXNlcjMyNDg2MDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/32486062?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tygyh', 'html_url': 'https://github.com/tygyh', 'followers_url': 'https://api.github.com/users/tygyh/followers', 'following_url': 'https://api.github.com/users/tygyh/following{/other_user}', 'gists_url': 'https://api.github.com/users/tygyh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tygyh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tygyh/subscriptions', 'organizations_url': 'https://api.github.com/users/tygyh/orgs', 'repos_url': 'https://api.github.com/users/tygyh/repos', 'events_url': 'https://api.github.com/users/tygyh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tygyh/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-08-01T21:36:01Z', 'updated_at': '2026-10-25T06:59:59Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14783', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14783.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14783.patch', 'merged_at': None}, 'body': None, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394641608', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783#issuecomment-6394641608', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783', 'id': 6394641608, 'node_id': 'IC_kwDOALCn2M8AAAABfSZ8yA', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T06:59:59Z', 'updated_at': '2026-10-25T06:59:59Z', 'body': 'Sorry, this has aged a bit.\r\nCan you please rebase this in case some of the later merged stuff would fail to build with the removed includes.', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394641608/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-25T04:10:38.539990 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'dolphin-ci[bot]', 'action': 'created', 'id': 14950, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14950#issuecomment-6393293054', 'safe_author': False, 'body': '[FifoCI](https://fifo.ci/about/) detected that this change impacts graphical rendering. Here are the [behavior differences](https://fifo.ci/version/b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1/) detected by the system:\n\n<details>\n<summary>Detected differences</summary>\n\n||ogl-lin-mesa|\n|-|-|\n|nes-vc|[❌ fail](https://fifo.ci/compare/16633751-16626983/)|\n</details>\n<sub><sup>automated-fifoci-reporter</sup></sub>', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'id': 6019504918, 'node_id': 'PR_kwDOALCn2M8AAAABKhCl7g', 'number': 14950, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-25T01:12:44Z', 'updated_at': '2026-10-25T04:10:36Z', 'closed_at': None, 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.patch', 'merged_at': None}, 'body': "The `completed` parameter needs to be supplied to `libusb_handle_events_timeout_completed` to handle the case of `libusb_interrupt_event_handler` firing between iterations.\n\nThis avoids the potential of having to wait for the 5 second timeout on shutdown.\n\nI've also adjusted the timeout to one second where `libusb_interrupt_event_handler` is unavailable.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6393293054', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950#issuecomment-6393293054', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'id': 6393293054, 'node_id': 'IC_kwDOALCn2M8AAAABfRHo_g', 'user': {'login': 'dolphin-ci[bot]', 'id': 59266906, 'node_id': 'MDM6Qm90NTkyNjY5MDY=', 'avatar_url': 'https://avatars.githubusercontent.com/in/49947?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D', 'html_url': 'https://github.com/apps/dolphin-ci', 'followers_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/followers', 'following_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/orgs', 'repos_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/repos', 'events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/received_events', 'type': 'Bot', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T04:10:36Z', 'updated_at': '2026-10-25T04:10:36Z', 'body': '[FifoCI](https://fifo.ci/about/) detected that this change impacts graphical rendering. Here are the [behavior differences](https://fifo.ci/version/b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1/) detected by the system:\n\n<details>\n<summary>Detected differences</summary>\n\n||ogl-lin-mesa|\n|-|-|\n|nes-vc|[❌ fail](https://fifo.ci/compare/16633751-16626983/)|\n</details>\n<sub><sup>automated-fifoci-reporter</sup></sub>', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6393293054/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': {'id': 49947, 'client_id': 'Iv1.1fcaea7644d8b727', 'slug': 'dolphin-ci', 'node_id': 'MDM6QXBwNDk5NDc=', 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'name': 'Dolphin CI', 'description': 'Continuous Integration setup for [dolphin-emu.org](https://dolphin-emu.org/).', 'external_url': 'https://github.com/dolphin-emu', 'html_url': 'https://github.com/apps/dolphin-ci', 'created_at': '2019-12-26T22:26:07Z', 'updated_at': '2019-12-26T22:33:19Z', 'permissions': {'checks': 'write', 'contents': 'read', 'issues': 'write', 'members': 'read', 'metadata': 'read', 'pull_requests': 'write', 'statuses': 'write'}, 'events': ['check_run', 'commit_comment', 'issue_comment', 'pull_request', 'pull_request_review', 'pull_request_review_comment', 'push']}, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15711, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'dolphin-ci[bot]', 'id': 59266906, 'node_id': 'MDM6Qm90NTkyNjY5MDY=', 'avatar_url': 'https://avatars.githubusercontent.com/in/49947?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D', 'html_url': 'https://github.com/apps/dolphin-ci', 'followers_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/followers', 'following_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/orgs', 'repos_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/repos', 'events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/received_events', 'type': 'Bot', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-25T00:14:53.736820 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'uVSthem', 'action': 'created', 'id': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391293708', 'safe_author': False, 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nI am willing to test if that is helpful. I use to run back-up discs in Dolphin all the time. If testing with back-up discs in an unflashed drive is helpful at all, let me know.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'id': 1548120621, 'node_id': 'PR_kwDOALCn2M5IEdi3', 'number': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 44, 'created_at': '2023-01-18T21:16:20Z', 'updated_at': '2026-10-25T00:14:52Z', 'closed_at': '2023-03-13T19:47:46Z', 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/11462', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.patch', 'merged_at': None}, 'body': "This reverts PR #11456.\r\n\r\nThe ability to boot DVD backups is in my experience as a maintainer of DiscIO really not a maintenance burden at all, since it's very compartmentalized. I had assumed that few people would be disappointed about this feature going away, but we ended up receiving disappointed comments on GitHub from three different people not long after the removal was merged, which is quite a lot. Therefore I would like to bring back this feature.\r\n\r\nI do agree with the argument that nobody who's maintaining Dolphin is testing this feature. But since it seems like there is a vocal minority actually using this feature, I'd say let's keep the feature until it actually breaks or actually becomes a maintenance burden.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/reactions', 'total_count': 4, '+1': 4, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391293708', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391293708', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'id': 6391293708, 'node_id': 'IC_kwDOALCn2M8AAAABfPNnDA', 'user': {'login': 'uVSthem', 'id': 1913166, 'node_id': 'MDQ6VXNlcjE5MTMxNjY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1913166?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/uVSthem', 'html_url': 'https://github.com/uVSthem', 'followers_url': 'https://api.github.com/users/uVSthem/followers', 'following_url': 'https://api.github.com/users/uVSthem/following{/other_user}', 'gists_url': 'https://api.github.com/users/uVSthem/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/uVSthem/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/uVSthem/subscriptions', 'organizations_url': 'https://api.github.com/users/uVSthem/orgs', 'repos_url': 'https://api.github.com/users/uVSthem/repos', 'events_url': 'https://api.github.com/users/uVSthem/events{/privacy}', 'received_events_url': 'https://api.github.com/users/uVSthem/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T00:14:51Z', 'updated_at': '2026-10-25T00:14:51Z', 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nI am willing to test if that is helpful. I use to run back-up discs in Dolphin all the time. If testing with back-up discs in an unflashed drive is helpful at all, let me know.", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391293708/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'uVSthem', 'id': 1913166, 'node_id': 'MDQ6VXNlcjE5MTMxNjY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1913166?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/uVSthem', 'html_url': 'https://github.com/uVSthem', 'followers_url': 'https://api.github.com/users/uVSthem/followers', 'following_url': 'https://api.github.com/users/uVSthem/following{/other_user}', 'gists_url': 'https://api.github.com/users/uVSthem/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/uVSthem/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/uVSthem/subscriptions', 'organizations_url': 'https://api.github.com/users/uVSthem/orgs', 'repos_url': 'https://api.github.com/users/uVSthem/repos', 'events_url': 'https://api.github.com/users/uVSthem/events{/privacy}', 'received_events_url': 'https://api.github.com/users/uVSthem/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-25T00:07:32.117949 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Yola-cola', 'action': 'created', 'id': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391225682', 'safe_author': False, 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nDo you need any help with it?", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'id': 1548120621, 'node_id': 'PR_kwDOALCn2M5IEdi3', 'number': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 43, 'created_at': '2023-01-18T21:16:20Z', 'updated_at': '2026-10-25T00:07:30Z', 'closed_at': '2023-03-13T19:47:46Z', 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/11462', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.patch', 'merged_at': None}, 'body': "This reverts PR #11456.\r\n\r\nThe ability to boot DVD backups is in my experience as a maintainer of DiscIO really not a maintenance burden at all, since it's very compartmentalized. I had assumed that few people would be disappointed about this feature going away, but we ended up receiving disappointed comments on GitHub from three different people not long after the removal was merged, which is quite a lot. Therefore I would like to bring back this feature.\r\n\r\nI do agree with the argument that nobody who's maintaining Dolphin is testing this feature. But since it seems like there is a vocal minority actually using this feature, I'd say let's keep the feature until it actually breaks or actually becomes a maintenance burden.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/reactions', 'total_count': 4, '+1': 4, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391225682', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391225682', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'id': 6391225682, 'node_id': 'IC_kwDOALCn2M8AAAABfPJdUg', 'user': {'login': 'Yola-cola', 'id': 53379032, 'node_id': 'MDQ6VXNlcjUzMzc5MDMy', 'avatar_url': 'https://avatars.githubusercontent.com/u/53379032?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Yola-cola', 'html_url': 'https://github.com/Yola-cola', 'followers_url': 'https://api.github.com/users/Yola-cola/followers', 'following_url': 'https://api.github.com/users/Yola-cola/following{/other_user}', 'gists_url': 'https://api.github.com/users/Yola-cola/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Yola-cola/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Yola-cola/subscriptions', 'organizations_url': 'https://api.github.com/users/Yola-cola/orgs', 'repos_url': 'https://api.github.com/users/Yola-cola/repos', 'events_url': 'https://api.github.com/users/Yola-cola/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Yola-cola/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T00:07:30Z', 'updated_at': '2026-10-25T00:07:30Z', 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nDo you need any help with it?", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391225682/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'Yola-cola', 'id': 53379032, 'node_id': 'MDQ6VXNlcjUzMzc5MDMy', 'avatar_url': 'https://avatars.githubusercontent.com/u/53379032?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Yola-cola', 'html_url': 'https://github.com/Yola-cola', 'followers_url': 'https://api.github.com/users/Yola-cola/followers', 'following_url': 'https://api.github.com/users/Yola-cola/following{/other_user}', 'gists_url': 'https://api.github.com/users/Yola-cola/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Yola-cola/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Yola-cola/subscriptions', 'organizations_url': 'https://api.github.com/users/Yola-cola/orgs', 'repos_url': 'https://api.github.com/users/Yola-cola/repos', 'events_url': 'https://api.github.com/users/Yola-cola/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Yola-cola/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T21:36:01.410964 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'sepalani', 'action': 'created', 'id': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14322#issuecomment-6389829515', 'safe_author': True, 'body': "I'd like to confirm some of the behaviours I'm unsure of, before proceeding further. So I'm switching this PR back to draft and I'm going to write some hardware tests.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'id': 3900738846, 'node_id': 'PR_kwDOALCn2M7Brwdv', 'number': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [{'id': 1667502011, 'node_id': 'MDU6TGFiZWwxNjY3NTAyMDEx', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels/needs%20rebase', 'name': 'needs rebase', 'color': '053663', 'default': False, 'description': '', 'archived_at': None, 'archived_by': None}], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 5, 'created_at': '2026-02-05T10:06:11Z', 'updated_at': '2026-10-24T21:35:59Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': True, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14322', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14322.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14322.patch', 'merged_at': None}, 'body': "A split version of https://github.com/dolphin-emu/dolphin/pull/13708, based on https://github.com/dolphin-emu/dolphin/pull/14321.\r\n\r\nThis enables keyboard emulation to work with HID games like Dragon Quest X, Monster Hunter G, and Monster Hunter Tri.\r\n\r\n\r\nThe supported OSes are based on `Common::KeyboardContext` actual support _(currently Windows only)_. Supporting new OSes won't necessitate changes to this PR as this will be entirely handled by the KeyboardContext class.\r\n\r\nReady to be reviewed and merged.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/reactions', 'total_count': 1, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 1, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389829515', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322#issuecomment-6389829515', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322', 'id': 6389829515, 'node_id': 'IC_kwDOALCn2M8AAAABfN0Piw', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T21:35:59Z', 'updated_at': '2026-10-24T21:35:59Z', 'body': "I'd like to confirm some of the behaviours I'm unsure of, before proceeding further. So I'm switching this PR back to draft and I'm going to write some hardware tests.", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389829515/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T21:08:33.108241 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'created', 'id': 14704, 'title': 'MathUtil: C++20/23 modernisations', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14704#issuecomment-6389554409', 'safe_author': True, 'body': '> Do we know what exactly is causing FifoCI to see minor changes?\r\n\r\nSolely the changes in NativeVertexFormat.h, which I assume cause minor floating point differences', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704', 'id': 4761487874, 'node_id': 'PR_kwDOALCn2M7rcvzB', 'number': 14704, 'title': 'MathUtil: C++20/23 modernisations', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 3, 'created_at': '2026-06-28T07:40:49Z', 'updated_at': '2026-10-24T21:08:30Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14704', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14704.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14704.patch', 'merged_at': None}, 'body': "I've also created DegreesToRadians/RadiansToDegrees utility functions since there was a lot of repeated code", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389554409', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704#issuecomment-6389554409', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704', 'id': 6389554409, 'node_id': 'IC_kwDOALCn2M8AAAABfNjc6Q', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T21:08:30Z', 'updated_at': '2026-10-24T21:08:30Z', 'body': '> Do we know what exactly is causing FifoCI to see minor changes?\r\n\r\nSolely the changes in NativeVertexFormat.h, which I assume cause minor floating point differences', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389554409/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T21:06:43.291910 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14704, 'title': 'MathUtil: C++20/23 modernisations', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14704#issuecomment-6389536247', 'safe_author': True, 'body': 'Do we know what exactly is causing FifoCI to see minor changes?', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704', 'id': 4761487874, 'node_id': 'PR_kwDOALCn2M7rcvzB', 'number': 14704, 'title': 'MathUtil: C++20/23 modernisations', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-06-28T07:40:49Z', 'updated_at': '2026-10-24T21:06:41Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14704', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14704.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14704.patch', 'merged_at': None}, 'body': "I've also created DegreesToRadians/RadiansToDegrees utility functions since there was a lot of repeated code", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389536247', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14704#issuecomment-6389536247', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14704', 'id': 6389536247, 'node_id': 'IC_kwDOALCn2M8AAAABfNiV9w', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T21:06:41Z', 'updated_at': '2026-10-24T21:06:41Z', 'body': 'Do we know what exactly is causing FifoCI to see minor changes?', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6389536247/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T18:48:35.867601 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'sepalani', 'action': 'created', 'id': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14322#issuecomment-6388139691', 'safe_author': True, 'body': "I rebased the PR and added sanity checks against the command's endpoint and length.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'id': 3900738846, 'node_id': 'PR_kwDOALCn2M7Brwdv', 'number': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [{'id': 1667502011, 'node_id': 'MDU6TGFiZWwxNjY3NTAyMDEx', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels/needs%20rebase', 'name': 'needs rebase', 'color': '053663', 'default': False, 'description': '', 'archived_at': None, 'archived_by': None}], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 4, 'created_at': '2026-02-05T10:06:11Z', 'updated_at': '2026-10-24T18:48:34Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14322', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14322.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14322.patch', 'merged_at': None}, 'body': "A split version of https://github.com/dolphin-emu/dolphin/pull/13708, based on https://github.com/dolphin-emu/dolphin/pull/14321.\r\n\r\nThis enables keyboard emulation to work with HID games like Dragon Quest X, Monster Hunter G, and Monster Hunter Tri.\r\n\r\n\r\nThe supported OSes are based on `Common::KeyboardContext` actual support _(currently Windows only)_. Supporting new OSes won't necessitate changes to this PR as this will be entirely handled by the KeyboardContext class.\r\n\r\nReady to be reviewed and merged.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/reactions', 'total_count': 1, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 1, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6388139691', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14322#issuecomment-6388139691', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14322', 'id': 6388139691, 'node_id': 'IC_kwDOALCn2M8AAAABfMNGqw', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T18:48:34Z', 'updated_at': '2026-10-24T18:48:34Z', 'body': "I rebased the PR and added sanity checks against the command's endpoint and length.", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6388139691/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T18:22:37Z', 'pushed_at': '2026-10-24T18:22:24Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T17:19:14.414926 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'RubGarFue', 'action': 'edited', 'id': 14932, 'title': 'Feature: Automatic SDL Controller Assignment', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14932#issuecomment-6386759630', 'safe_author': False, 'body': 'Hello again, and sorry for the late response. I’ve been away for most of the week and haven’t had much time to work on this issue.\r\n\r\nI would also like to thank the feedback received about the Pull Request, I want to make a useful feature for everyone that might use this so everything that can be improved is more than welcomed.\r\n\r\nI’ll try to clarify the goal of this PR, explain why I approached the problem this way, and address your comments.\r\n\r\n> So, there are many reasons why default mapping hasn\'t been implement for Wii Remotes.\r\n\r\nI am aware of the complexity of creating a default layout for the Wii Remote (I\'ve seen other threads trying to do so and I fully understand the reasons why those have been discarded).\r\n\r\nThe reality is that I have created this default configuration because is one that works well for me, I understand that my particular preferences may not be aligned with most of the users and that there are many changes that could improve waaaaaay more this default configuration (I fully agree that this config is not optimal at all and that many other attempts of creating a default configuration probably much better that mine have already been discarded).\r\n\r\nPersonally, I think more about this default layout as a "template" or a "fallback layout" if that makes any kind of sense. So instead of trying to defend this particular layout I will try to explain the reasons that have led me to the creation of it.\r\n\r\n> Speaking of which, I imagine a lot of players will want to customize after the fact. Can users turn this setting off and customize the mappings?\r\n\r\nBefore starting with the explanation I want to make two things clear about this PR.\r\n\r\nThe first one is that this feature is fully optional, a CheckBox called `Auto Controller Assignment` has been created in the Controller Configuration and it is unmarked by default, so even if you think that this feature will not work for you, you can just let it unmarked and everything will work as always.\r\n\r\nThe second thing, as I said before, is that this default configuration is intended as a fallback for previously unconfigured controllers, not as a universal mapping that works well across the entire Wii library. The idea is that users can create their own configurations for their set of controllers and the feature will select those configurations for each SDL device. \r\n\r\nLet me explain the full issue.\r\n\r\n\r\n### **Why have I created a default layout for the Wii Remote?**\r\n\r\nSo, the main idea of this feature is to simplify the controller connections to the Dolphin Emulator and make them transparent for the final user.\r\n\r\nFor example, you might want to change your controller from one game session to another, doing so requires manually selecting the device and profile for that particular gamepad. Another example would be adding a second controller to play with a friend, again that requires manually adding a second slot, selecting the controller and the profile. What this feature aims to do is to have the possibility to do all of this automatically.\r\n\r\nIn order to achieve that, the code must know what profile you would like to select for a particular controller. That’s why when a controller is connected the code searches for `SDL Auto Assignment + DEVICE_NAME.ini` where `DEVICE_NAME` is the controller name given by SDL library (the one that is shown in the Device list inside the controller configuration), in the case of the Xbox Controller the code might search something like `SDL Auto Assignment Xbox One X Controller.ini` (please note that this is just a placeholder, if you don’t like that particular name I’m more than open to accept ideas)\r\n\r\nThe question that arises then is what happens when you connect a controller that has not been previously configured. This is why the creation of a default layout (that would be used as a “fallback layout” as I said before) looked to me as a good option. \r\n\r\nHaving said that, I understand that after explaining my point, this does not motivate by itself the creation of a default layout, particularly if it gives users the impression that it will work well with every game. But I still need to resolve what happens when we connect a SDL gamepad that has not been configured before. \r\n\r\nThree options come to my mind:\r\n\r\n**Option 1 - Letting the default configuration as a fallback**\r\n\r\nLet the default layout idea as it is (the layout itself can be changed however you prefer), so this configuration is used as a fallback option when no config is specified. I understand this option has several problems.\r\n\r\n**Option 2 - Let the users create a fallback configuration by themselves**\r\n\r\nAnother idea would be not providing a default layout, but letting the users create a default one by themselves.\r\n\r\nFor example, if users create a config called `SDL Auto Assignment Default.ini` it could be used as the fallback if no specific configuration is found. \r\n\r\nPersonally, I think this option would also be great if option 1 is not suitable.\r\n\r\n**Option 3 - No configuration at all**\r\n\r\nThe last option that I can think of is just selecting the SDL device but with a “void” layout. No buttons are mapped until the user manually does it or creates a specific configuration for that controller.\r\n\r\nIf you have any other idea that might fix this issue and you consider it a better solution I am more than open to discuss it.\r\n\r\nOne final thought regarding the layout discussion is that one additional improvement I’d like to explore in the future is extending this feature to support automatic configuration selection not only based on the connected controller, but also on the game being played. This would allow users to have different mappings for the same controller depending on the game, which could be particularly useful for games with very different control schemes.\r\n\r\nThis is outside the scope of the current PR, but I’d be happy to work on extending it in this direction in the future if this feature is finally accepted (and also if I have the time to do so).\r\n\r\n> Finally, forgive me if I\'m wrong, but there is a lot about how your post is structured that smells like AI. That\'s fine, our project has no issue with LLM use in this part of our code, as this doesn\'t touch any emulation bits. Buuut I and many other developers would appreciate a clear disclosure of any LLM use.\r\n\r\nAbout this topic, you are not wrong at all and I have used AI tools for this PR. I’m so sorry I didn’t add a disclaimer in the first comment, it was not my intention to hide it.\r\n\r\nTo make things clear. AI tools have been used in three different ways:\r\n\r\n- **Investigation:** Although I have a programming background I have no experience with Dolphin Emulator codebase. I have used AI to better understand the code and what parts I had to change to create this feature.\r\n- **Bug fixes & Refactoring:** In order to search for hidden bugs that I might have introduced, I have used AI tools to review the added changes. In addition to that, I also have also used it to refactor or change parts of the code that I was not originally very happy with.\r\n- **Comments:** I have used AI to comment all the changes in the code, the comments from the PR have been fully AI generated. I know that AI can result in verbose comments sometimes but considering that other people had to review it and might have questions about specific parts of the code I prefer to have more than less. I’m happy to revise or remove them where appropriate.\r\n\r\nIf you want me to add a disclaimer in the first comment or in any other part I have no complaints to do so.\r\n\r\nI think I haven’t left anything unsaid but again do not hesitate to reach me back for any other open question.', 'raw': {'action': 'edited', 'changes': {'body': {'from': 'Hello again, and sorry for the late response. I’ve been away for most of the week and haven’t had much time to work on this issue.\r\n\r\nI would also like to thank the feedback received about the Pull Request, I want to make a useful feature for everyone that might use this so everything that can be improved is more than welcomed.\r\n\r\nI’ll try to clarify the goal of this PR, explain why I approached the problem this way, and address your comments.\r\n\r\n> So, there are many reasons why default mapping hasn\'t been implement for Wii Remotes.\r\n\r\nI am aware of the complexity of creating a default layout for the Wii Remote (I\'ve seen other threads trying to do so and I fully understand the reasons why those have been discarded).\r\n\r\nThe reality is that I have created this default configuration because is one that works well for me, I understand that my particular preferences may not be aligned with most of the users and that there are many changes that could improve waaaaaay more this default configuration (I fully agree that this config is not optimal at all and that many other attempts of creating a default configuration probably much better that mine have already been discarded).\r\n\r\nPersonally, I think more about this default layout as a "template" or a "fallback layout" if that makes any kind of sense. So instead of trying to defend this particular layout I will try to explain the reasons that have led me to the creation of it.\r\n\r\n> Speaking of which, I imagine a lot of players will want to customize after the fact. Can users turn this setting off and customize the mappings?\r\n\r\nBefore starting with the explanation I want to make two things clear about this PR.\r\n\r\nThe first one is that this feature is fully optional, a CheckBox called `Auto Controller Assignment` has been created in the Controller Configuration and it is unmarked by default, so even if you think that this feature will not work for you, you can just let it unmarked and everything will work as always.\r\n\r\nThe second thing, as I said before, is that this default configuration is intended as a fallback for previously unconfigured controllers, not as a universal mapping that works well across the entire Wii library. The idea is that users can create their own configurations for their set of controllers and the feature will select those configurations for each SDL device. \r\n\r\nLet me explain the full issue.\r\n\r\n\r\n### **Why have I created a default layout for the Wii Remote?**\r\n\r\nSo, the main idea of this feature is to simplify the controller connections to the Dolphin Emulator and make them transparent for the final user.\r\n\r\nFor example, you might want to change your controller from one game session to another, doing so requires manually selecting the device and profile for that particular gamepad. Another example would be adding a second controller to play with a friend, again that requires manually adding a second slot, selecting the controller and the profile. What this feature aims to do is to have the possibility to do all of this automatically.\r\n\r\nIn order to achieve that, the code must know what profile you would like to select for a particular controller. That’s why when a controller is connected the code searches for `SDL Auto Assignment + DEVICE_NAME.ini` where `DEVICE_NAME` is the controller name given by SDL library (the one that is shown in the Device list inside the controller configuration), in the case of the Xbox Controller the code might search something like `SDL Auto Assignment Xbox One X Controller.ini` (please note that this is just a placeholder, if you don’t like that particular name I’m more than open to accept ideas)\r\n\r\nThe question that arises then is what happens when you connect a controller that has not been previously configured. This is why the creation of a default layout (that would be used as a “fallback layout” as I said before) looked to me as a good option. \r\n\r\nHaving said that, I understand that after explaining my point, this does not motivate by itself the creation of a default layout, particularly if it gives users the impression that it will work well with every game. But I still need to resolve what happens when we connect a SDL gamepad that has not been configured before. \r\n\r\nThree options come to my mind:\r\n\r\n**Option 1 - Letting the default configuration as a fallback**\r\n\r\nLet the default layout idea as it is (the layout itself can be changed however you prefer), so this configuration is used as a fallback option when no config is specified. I understand this option has several problems.\r\n\r\n**Option 2 - Let the users create a fallback configuration by themselves**\r\n\r\nAnother idea would be not providing a default layout, but letting the users create a default one by themselves.\r\n\r\nFor example, if users create a config called `SDL Auto Assignment Default.ini` it could be used as the fallback if no specific configuration is found. \r\n\r\nPersonally, I think this option would also be great if option 1 is not suitable.\r\n\r\n**Option 3 - No configuration at all**\r\n\r\nThe last option that I can think of is just selecting the SDL device but with a “void” layout. No buttons are mapped until the user manually does it or creates a specific configuration for that controller.\r\n\r\nIf you have any other idea that might fix this issue and you consider it a better solution I am more than open to discuss it.\r\n\r\n> Finally, forgive me if I\'m wrong, but there is a lot about how your post is structured that smells like AI. That\'s fine, our project has no issue with LLM use in this part of our code, as this doesn\'t touch any emulation bits. Buuut I and many other developers would appreciate a clear disclosure of any LLM use.\r\n\r\nAbout this topic, you are not wrong at all and I have used AI tools for this PR. I’m so sorry I didn’t add a disclaimer in the first comment, it was not my intention to hide it.\r\n\r\nTo make things clear. AI tools have been used in three different ways:\r\n\r\n- **Investigation:** Although I have a programming background I have no experience with Dolphin Emulator codebase. I have used AI to better understand the code and what parts I had to change to create this feature.\r\n- **Bug fixes & Refactoring:** In order to search for hidden bugs that I might have introduced, I have used AI tools to review the added changes. In addition to that, I also have also used it to refactor or change parts of the code that I was not originally very happy with.\r\n- **Comments:** I have used AI to comment all the changes in the code, the comments from the PR have been fully AI generated. I know that AI can result in verbose comments sometimes but considering that other people had to review it and might have questions about specific parts of the code I prefer to have more than less. I’m happy to revise or remove them where appropriate.\r\n\r\nIf you want me to add a disclaimer in the first comment or in any other part I have no complaints to do so.\r\n\r\nI think I haven’t left anything unsaid but again do not hesitate to reach me back for any other open question.'}}, 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932', 'id': 5851409517, 'node_id': 'PR_kwDOALCn2M8AAAABIbvV6Q', 'number': 14932, 'title': 'Feature: Automatic SDL Controller Assignment', 'user': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 7, 'created_at': '2026-10-14T16:20:06Z', 'updated_at': '2026-10-24T16:36:40Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14932', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14932.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14932.patch', 'merged_at': None}, 'body': "The goal of this feature is to make controller management dynamic, so users can connect, disconnect, or switch controllers without having to manually reconfigure Dolphin's controller settings every time.\r\n\r\n**Implemented Features**\r\n\r\n**1. Automatic controller connection and disconnection**\r\n\r\nDolphin automatically detects controller connection and disconnection events and updates the active player slots accordingly. When a controller is connected, it can be assigned to an available player slot; when a controller is disconnected, its slot is deactivated.\r\nThis makes switching between different controllers and setting up local multiplayer much more convenient, specially while a game is already running.\r\n\r\n**2. Automatic Bluetooth device selection for Wiimotes**\r\n\r\nWhen a connected controller is identified as a Wiimote, Dolphin automatically selects its Bluetooth device instead of the SDL one. This is important because it allows Wiimotes to use Dolphin's native motion input support and mapped buttons rather than being treated as ordinary gamepads.\r\n\r\n**3. Default SDL mapping for controllers**\r\n\r\nA default mapping for emulated Wiimote has been added for controllers detected through SDL.\r\nThe default mapping can be customized for individual controllers by creating an SDL configuration for that specific device. Dolphin will automatically select the matching configuration when that controller is detected, allowing different controllers to have their own mappings without requiring manual reconfiguration whenever they are connected.\r\n\r\n**4. Partial Steam Input integration**\r\n\r\nA partial integration with Steam Input has also been implemented to detect controller reordering.\r\nWhen a controller changes position through Steam Input's controller ordering interface, Dolphin can detect the resulting device changes and update its in-game controller assignments accordingly.\r\nHowever, the behavior differs between Windows and Linux (including SteamOS on the Steam Deck), due to differences in how XInput and evdev expose controllers to applications.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/reactions', 'total_count': 2, '+1': 1, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 1, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6386759630', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932#issuecomment-6386759630', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932', 'id': 6386759630, 'node_id': 'IC_kwDOALCn2M8AAAABfK43zg', 'user': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T16:36:40Z', 'updated_at': '2026-10-24T17:19:13Z', 'body': 'Hello again, and sorry for the late response. I’ve been away for most of the week and haven’t had much time to work on this issue.\r\n\r\nI would also like to thank the feedback received about the Pull Request, I want to make a useful feature for everyone that might use this so everything that can be improved is more than welcomed.\r\n\r\nI’ll try to clarify the goal of this PR, explain why I approached the problem this way, and address your comments.\r\n\r\n> So, there are many reasons why default mapping hasn\'t been implement for Wii Remotes.\r\n\r\nI am aware of the complexity of creating a default layout for the Wii Remote (I\'ve seen other threads trying to do so and I fully understand the reasons why those have been discarded).\r\n\r\nThe reality is that I have created this default configuration because is one that works well for me, I understand that my particular preferences may not be aligned with most of the users and that there are many changes that could improve waaaaaay more this default configuration (I fully agree that this config is not optimal at all and that many other attempts of creating a default configuration probably much better that mine have already been discarded).\r\n\r\nPersonally, I think more about this default layout as a "template" or a "fallback layout" if that makes any kind of sense. So instead of trying to defend this particular layout I will try to explain the reasons that have led me to the creation of it.\r\n\r\n> Speaking of which, I imagine a lot of players will want to customize after the fact. Can users turn this setting off and customize the mappings?\r\n\r\nBefore starting with the explanation I want to make two things clear about this PR.\r\n\r\nThe first one is that this feature is fully optional, a CheckBox called `Auto Controller Assignment` has been created in the Controller Configuration and it is unmarked by default, so even if you think that this feature will not work for you, you can just let it unmarked and everything will work as always.\r\n\r\nThe second thing, as I said before, is that this default configuration is intended as a fallback for previously unconfigured controllers, not as a universal mapping that works well across the entire Wii library. The idea is that users can create their own configurations for their set of controllers and the feature will select those configurations for each SDL device. \r\n\r\nLet me explain the full issue.\r\n\r\n\r\n### **Why have I created a default layout for the Wii Remote?**\r\n\r\nSo, the main idea of this feature is to simplify the controller connections to the Dolphin Emulator and make them transparent for the final user.\r\n\r\nFor example, you might want to change your controller from one game session to another, doing so requires manually selecting the device and profile for that particular gamepad. Another example would be adding a second controller to play with a friend, again that requires manually adding a second slot, selecting the controller and the profile. What this feature aims to do is to have the possibility to do all of this automatically.\r\n\r\nIn order to achieve that, the code must know what profile you would like to select for a particular controller. That’s why when a controller is connected the code searches for `SDL Auto Assignment + DEVICE_NAME.ini` where `DEVICE_NAME` is the controller name given by SDL library (the one that is shown in the Device list inside the controller configuration), in the case of the Xbox Controller the code might search something like `SDL Auto Assignment Xbox One X Controller.ini` (please note that this is just a placeholder, if you don’t like that particular name I’m more than open to accept ideas)\r\n\r\nThe question that arises then is what happens when you connect a controller that has not been previously configured. This is why the creation of a default layout (that would be used as a “fallback layout” as I said before) looked to me as a good option. \r\n\r\nHaving said that, I understand that after explaining my point, this does not motivate by itself the creation of a default layout, particularly if it gives users the impression that it will work well with every game. But I still need to resolve what happens when we connect a SDL gamepad that has not been configured before. \r\n\r\nThree options come to my mind:\r\n\r\n**Option 1 - Letting the default configuration as a fallback**\r\n\r\nLet the default layout idea as it is (the layout itself can be changed however you prefer), so this configuration is used as a fallback option when no config is specified. I understand this option has several problems.\r\n\r\n**Option 2 - Let the users create a fallback configuration by themselves**\r\n\r\nAnother idea would be not providing a default layout, but letting the users create a default one by themselves.\r\n\r\nFor example, if users create a config called `SDL Auto Assignment Default.ini` it could be used as the fallback if no specific configuration is found. \r\n\r\nPersonally, I think this option would also be great if option 1 is not suitable.\r\n\r\n**Option 3 - No configuration at all**\r\n\r\nThe last option that I can think of is just selecting the SDL device but with a “void” layout. No buttons are mapped until the user manually does it or creates a specific configuration for that controller.\r\n\r\nIf you have any other idea that might fix this issue and you consider it a better solution I am more than open to discuss it.\r\n\r\nOne final thought regarding the layout discussion is that one additional improvement I’d like to explore in the future is extending this feature to support automatic configuration selection not only based on the connected controller, but also on the game being played. This would allow users to have different mappings for the same controller depending on the game, which could be particularly useful for games with very different control schemes.\r\n\r\nThis is outside the scope of the current PR, but I’d be happy to work on extending it in this direction in the future if this feature is finally accepted (and also if I have the time to do so).\r\n\r\n> Finally, forgive me if I\'m wrong, but there is a lot about how your post is structured that smells like AI. That\'s fine, our project has no issue with LLM use in this part of our code, as this doesn\'t touch any emulation bits. Buuut I and many other developers would appreciate a clear disclosure of any LLM use.\r\n\r\nAbout this topic, you are not wrong at all and I have used AI tools for this PR. I’m so sorry I didn’t add a disclaimer in the first comment, it was not my intention to hide it.\r\n\r\nTo make things clear. AI tools have been used in three different ways:\r\n\r\n- **Investigation:** Although I have a programming background I have no experience with Dolphin Emulator codebase. I have used AI to better understand the code and what parts I had to change to create this feature.\r\n- **Bug fixes & Refactoring:** In order to search for hidden bugs that I might have introduced, I have used AI tools to review the added changes. In addition to that, I also have also used it to refactor or change parts of the code that I was not originally very happy with.\r\n- **Comments:** I have used AI to comment all the changes in the code, the comments from the PR have been fully AI generated. I know that AI can result in verbose comments sometimes but considering that other people had to review it and might have questions about specific parts of the code I prefer to have more than less. I’m happy to revise or remove them where appropriate.\r\n\r\nIf you want me to add a disclaimer in the first comment or in any other part I have no complaints to do so.\r\n\r\nI think I haven’t left anything unsaid but again do not hesitate to reach me back for any other open question.', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6386759630/reactions', 'total_count': 1, '+1': 1, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T16:13:41Z', 'pushed_at': '2026-10-24T12:16:22Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T17:12:53.910497 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'FriendlyDarkness', 'action': 'created', 'id': 14864, 'title': 'Fix building with Xcode 27 by bumping minimum macOS version to 12 Monterey', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14864#issuecomment-6387147324', 'safe_author': False, 'body': "Sorry for the radio silence everyone, but I don't think this PR is required anymore.\r\n\r\nI can corroborate @Hibyehello's story after I tested building on my own Mac. And given there's another PR to switch to prebuilt MoltenVK (#14545), even that one argument for dropping Big Sur is not valid anymore.\r\n\r\nAs such, I decided to close this PR for the moment. Sorry for the noise!", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14864', 'id': 5439613993, 'node_id': 'PR_kwDOALCn2M8AAAABDVBfMA', 'number': 14864, 'title': 'Fix building with Xcode 27 by bumping minimum macOS version to 12 Monterey', 'user': {'login': 'FriendlyDarkness', 'id': 97096678, 'node_id': 'U_kgDOBcmT5g', 'avatar_url': 'https://avatars.githubusercontent.com/u/97096678?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/FriendlyDarkness', 'html_url': 'https://github.com/FriendlyDarkness', 'followers_url': 'https://api.github.com/users/FriendlyDarkness/followers', 'following_url': 'https://api.github.com/users/FriendlyDarkness/following{/other_user}', 'gists_url': 'https://api.github.com/users/FriendlyDarkness/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/FriendlyDarkness/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/FriendlyDarkness/subscriptions', 'organizations_url': 'https://api.github.com/users/FriendlyDarkness/orgs', 'repos_url': 'https://api.github.com/users/FriendlyDarkness/repos', 'events_url': 'https://api.github.com/users/FriendlyDarkness/events{/privacy}', 'received_events_url': 'https://api.github.com/users/FriendlyDarkness/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 6, 'created_at': '2026-09-13T10:54:37Z', 'updated_at': '2026-10-24T17:12:51Z', 'closed_at': '2026-10-24T17:12:51Z', 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14864', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14864', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14864.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14864.patch', 'merged_at': None}, 'body': "Haven't tried building Dolphin on my Mac with Xcode 27 yet (I'm not on my Mac at the moment), but if I'm not mistaken, you guys will be affected by Xcode 27 [dropping support for Big Sur as a deployment target](https://developer.apple.com/xcode/system-requirements/)\r\n\r\nAnd it seems this time, being below the minimum target causes build failures, as evidenced by other projects like the Flutter framework needing to bump to iOS 15 and macOS 12 themselves (see flutter/flutter#187741 and flutter/flutter#187762)\r\n\r\nAs a result, this PR increases the deployment targets in CMakeLists.txt and BuildMacOSUniversalBinary.py to macOS 12", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864/reactions', 'total_count': 2, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 1, 'rocket': 0, 'eyes': 1}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6387147324', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14864#issuecomment-6387147324', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14864', 'id': 6387147324, 'node_id': 'IC_kwDOALCn2M8AAAABfLQiPA', 'user': {'login': 'FriendlyDarkness', 'id': 97096678, 'node_id': 'U_kgDOBcmT5g', 'avatar_url': 'https://avatars.githubusercontent.com/u/97096678?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/FriendlyDarkness', 'html_url': 'https://github.com/FriendlyDarkness', 'followers_url': 'https://api.github.com/users/FriendlyDarkness/followers', 'following_url': 'https://api.github.com/users/FriendlyDarkness/following{/other_user}', 'gists_url': 'https://api.github.com/users/FriendlyDarkness/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/FriendlyDarkness/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/FriendlyDarkness/subscriptions', 'organizations_url': 'https://api.github.com/users/FriendlyDarkness/orgs', 'repos_url': 'https://api.github.com/users/FriendlyDarkness/repos', 'events_url': 'https://api.github.com/users/FriendlyDarkness/events{/privacy}', 'received_events_url': 'https://api.github.com/users/FriendlyDarkness/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T17:12:51Z', 'updated_at': '2026-10-24T17:12:51Z', 'body': "Sorry for the radio silence everyone, but I don't think this PR is required anymore.\r\n\r\nI can corroborate @Hibyehello's story after I tested building on my own Mac. And given there's another PR to switch to prebuilt MoltenVK (#14545), even that one argument for dropping Big Sur is not valid anymore.\r\n\r\nAs such, I decided to close this PR for the moment. Sorry for the noise!", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6387147324/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T16:13:41Z', 'pushed_at': '2026-10-24T12:16:22Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'FriendlyDarkness', 'id': 97096678, 'node_id': 'U_kgDOBcmT5g', 'avatar_url': 'https://avatars.githubusercontent.com/u/97096678?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/FriendlyDarkness', 'html_url': 'https://github.com/FriendlyDarkness', 'followers_url': 'https://api.github.com/users/FriendlyDarkness/followers', 'following_url': 'https://api.github.com/users/FriendlyDarkness/following{/other_user}', 'gists_url': 'https://api.github.com/users/FriendlyDarkness/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/FriendlyDarkness/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/FriendlyDarkness/subscriptions', 'organizations_url': 'https://api.github.com/users/FriendlyDarkness/orgs', 'repos_url': 'https://api.github.com/users/FriendlyDarkness/repos', 'events_url': 'https://api.github.com/users/FriendlyDarkness/events{/privacy}', 'received_events_url': 'https://api.github.com/users/FriendlyDarkness/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T16:36:42.781326 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'RubGarFue', 'action': 'created', 'id': 14932, 'title': 'Feature: Automatic SDL Controller Assignment', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14932#issuecomment-6386759630', 'safe_author': False, 'body': 'Hello again, and sorry for the late response. I’ve been away for most of the week and haven’t had much time to work on this issue.\r\n\r\nI would also like to thank the feedback received about the Pull Request, I want to make a useful feature for everyone that might use this so everything that can be improved is more than welcomed.\r\n\r\nI’ll try to clarify the goal of this PR, explain why I approached the problem this way, and address your comments.\r\n\r\n> So, there are many reasons why default mapping hasn\'t been implement for Wii Remotes.\r\n\r\nI am aware of the complexity of creating a default layout for the Wii Remote (I\'ve seen other threads trying to do so and I fully understand the reasons why those have been discarded).\r\n\r\nThe reality is that I have created this default configuration because is one that works well for me, I understand that my particular preferences may not be aligned with most of the users and that there are many changes that could improve waaaaaay more this default configuration (I fully agree that this config is not optimal at all and that many other attempts of creating a default configuration probably much better that mine have already been discarded).\r\n\r\nPersonally, I think more about this default layout as a "template" or a "fallback layout" if that makes any kind of sense. So instead of trying to defend this particular layout I will try to explain the reasons that have led me to the creation of it.\r\n\r\n> Speaking of which, I imagine a lot of players will want to customize after the fact. Can users turn this setting off and customize the mappings?\r\n\r\nBefore starting with the explanation I want to make two things clear about this PR.\r\n\r\nThe first one is that this feature is fully optional, a CheckBox called `Auto Controller Assignment` has been created in the Controller Configuration and it is unmarked by default, so even if you think that this feature will not work for you, you can just let it unmarked and everything will work as always.\r\n\r\nThe second thing, as I said before, is that this default configuration is intended as a fallback for previously unconfigured controllers, not as a universal mapping that works well across the entire Wii library. The idea is that users can create their own configurations for their set of controllers and the feature will select those configurations for each SDL device. \r\n\r\nLet me explain the full issue.\r\n\r\n\r\n### **Why have I created a default layout for the Wii Remote?**\r\n\r\nSo, the main idea of this feature is to simplify the controller connections to the Dolphin Emulator and make them transparent for the final user.\r\n\r\nFor example, you might want to change your controller from one game session to another, doing so requires manually selecting the device and profile for that particular gamepad. Another example would be adding a second controller to play with a friend, again that requires manually adding a second slot, selecting the controller and the profile. What this feature aims to do is to have the possibility to do all of this automatically.\r\n\r\nIn order to achieve that, the code must know what profile you would like to select for a particular controller. That’s why when a controller is connected the code searches for `SDL Auto Assignment + DEVICE_NAME.ini` where `DEVICE_NAME` is the controller name given by SDL library (the one that is shown in the Device list inside the controller configuration), in the case of the Xbox Controller the code might search something like `SDL Auto Assignment Xbox One X Controller.ini` (please note that this is just a placeholder, if you don’t like that particular name I’m more than open to accept ideas)\r\n\r\nThe question that arises then is what happens when you connect a controller that has not been previously configured. This is why the creation of a default layout (that would be used as a “fallback layout” as I said before) looked to me as a good option. \r\n\r\nHaving said that, I understand that after explaining my point, this does not motivate by itself the creation of a default layout, particularly if it gives users the impression that it will work well with every game. But I still need to resolve what happens when we connect a SDL gamepad that has not been configured before. \r\n\r\nThree options come to my mind:\r\n\r\n**Option 1 - Letting the default configuration as a fallback**\r\n\r\nLet the default layout idea as it is (the layout itself can be changed however you prefer), so this configuration is used as a fallback option when no config is specified. I understand this option has several problems.\r\n\r\n**Option 2 - Let the users create a fallback configuration by themselves**\r\n\r\nAnother idea would be not providing a default layout, but letting the users create a default one by themselves.\r\n\r\nFor example, if users create a config called `SDL Auto Assignment Default.ini` it could be used as the fallback if no specific configuration is found. \r\n\r\nPersonally, I think this option would also be great if option 1 is not suitable.\r\n\r\n**Option 3 - No configuration at all**\r\n\r\nThe last option that I can think of is just selecting the SDL device but with a “void” layout. No buttons are mapped until the user manually does it or creates a specific configuration for that controller.\r\n\r\nIf you have any other idea that might fix this issue and you consider it a better solution I am more than open to discuss it.\r\n\r\n> Finally, forgive me if I\'m wrong, but there is a lot about how your post is structured that smells like AI. That\'s fine, our project has no issue with LLM use in this part of our code, as this doesn\'t touch any emulation bits. Buuut I and many other developers would appreciate a clear disclosure of any LLM use.\r\n\r\nAbout this topic, you are not wrong at all and I have used AI tools for this PR. I’m so sorry I didn’t add a disclaimer in the first comment, it was not my intention to hide it.\r\n\r\nTo make things clear. AI tools have been used in three different ways:\r\n\r\n- **Investigation:** Although I have a programming background I have no experience with Dolphin Emulator codebase. I have used AI to better understand the code and what parts I had to change to create this feature.\r\n- **Bug fixes & Refactoring:** In order to search for hidden bugs that I might have introduced, I have used AI tools to review the added changes. In addition to that, I also have also used it to refactor or change parts of the code that I was not originally very happy with.\r\n- **Comments:** I have used AI to comment all the changes in the code, the comments from the PR have been fully AI generated. I know that AI can result in verbose comments sometimes but considering that other people had to review it and might have questions about specific parts of the code I prefer to have more than less. I’m happy to revise or remove them where appropriate.\r\n\r\nIf you want me to add a disclaimer in the first comment or in any other part I have no complaints to do so.\r\n\r\nI think I haven’t left anything unsaid but again do not hesitate to reach me back for any other open question.', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932', 'id': 5851409517, 'node_id': 'PR_kwDOALCn2M8AAAABIbvV6Q', 'number': 14932, 'title': 'Feature: Automatic SDL Controller Assignment', 'user': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 7, 'created_at': '2026-10-14T16:20:06Z', 'updated_at': '2026-10-24T16:36:40Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14932', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14932.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14932.patch', 'merged_at': None}, 'body': "The goal of this feature is to make controller management dynamic, so users can connect, disconnect, or switch controllers without having to manually reconfigure Dolphin's controller settings every time.\r\n\r\n**Implemented Features**\r\n\r\n**1. Automatic controller connection and disconnection**\r\n\r\nDolphin automatically detects controller connection and disconnection events and updates the active player slots accordingly. When a controller is connected, it can be assigned to an available player slot; when a controller is disconnected, its slot is deactivated.\r\nThis makes switching between different controllers and setting up local multiplayer much more convenient, specially while a game is already running.\r\n\r\n**2. Automatic Bluetooth device selection for Wiimotes**\r\n\r\nWhen a connected controller is identified as a Wiimote, Dolphin automatically selects its Bluetooth device instead of the SDL one. This is important because it allows Wiimotes to use Dolphin's native motion input support and mapped buttons rather than being treated as ordinary gamepads.\r\n\r\n**3. Default SDL mapping for controllers**\r\n\r\nA default mapping for emulated Wiimote has been added for controllers detected through SDL.\r\nThe default mapping can be customized for individual controllers by creating an SDL configuration for that specific device. Dolphin will automatically select the matching configuration when that controller is detected, allowing different controllers to have their own mappings without requiring manual reconfiguration whenever they are connected.\r\n\r\n**4. Partial Steam Input integration**\r\n\r\nA partial integration with Steam Input has also been implemented to detect controller reordering.\r\nWhen a controller changes position through Steam Input's controller ordering interface, Dolphin can detect the resulting device changes and update its in-game controller assignments accordingly.\r\nHowever, the behavior differs between Windows and Linux (including SteamOS on the Steam Deck), due to differences in how XInput and evdev expose controllers to applications.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/reactions', 'total_count': 1, '+1': 1, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6386759630', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14932#issuecomment-6386759630', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14932', 'id': 6386759630, 'node_id': 'IC_kwDOALCn2M8AAAABfK43zg', 'user': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T16:36:40Z', 'updated_at': '2026-10-24T16:36:40Z', 'body': 'Hello again, and sorry for the late response. I’ve been away for most of the week and haven’t had much time to work on this issue.\r\n\r\nI would also like to thank the feedback received about the Pull Request, I want to make a useful feature for everyone that might use this so everything that can be improved is more than welcomed.\r\n\r\nI’ll try to clarify the goal of this PR, explain why I approached the problem this way, and address your comments.\r\n\r\n> So, there are many reasons why default mapping hasn\'t been implement for Wii Remotes.\r\n\r\nI am aware of the complexity of creating a default layout for the Wii Remote (I\'ve seen other threads trying to do so and I fully understand the reasons why those have been discarded).\r\n\r\nThe reality is that I have created this default configuration because is one that works well for me, I understand that my particular preferences may not be aligned with most of the users and that there are many changes that could improve waaaaaay more this default configuration (I fully agree that this config is not optimal at all and that many other attempts of creating a default configuration probably much better that mine have already been discarded).\r\n\r\nPersonally, I think more about this default layout as a "template" or a "fallback layout" if that makes any kind of sense. So instead of trying to defend this particular layout I will try to explain the reasons that have led me to the creation of it.\r\n\r\n> Speaking of which, I imagine a lot of players will want to customize after the fact. Can users turn this setting off and customize the mappings?\r\n\r\nBefore starting with the explanation I want to make two things clear about this PR.\r\n\r\nThe first one is that this feature is fully optional, a CheckBox called `Auto Controller Assignment` has been created in the Controller Configuration and it is unmarked by default, so even if you think that this feature will not work for you, you can just let it unmarked and everything will work as always.\r\n\r\nThe second thing, as I said before, is that this default configuration is intended as a fallback for previously unconfigured controllers, not as a universal mapping that works well across the entire Wii library. The idea is that users can create their own configurations for their set of controllers and the feature will select those configurations for each SDL device. \r\n\r\nLet me explain the full issue.\r\n\r\n\r\n### **Why have I created a default layout for the Wii Remote?**\r\n\r\nSo, the main idea of this feature is to simplify the controller connections to the Dolphin Emulator and make them transparent for the final user.\r\n\r\nFor example, you might want to change your controller from one game session to another, doing so requires manually selecting the device and profile for that particular gamepad. Another example would be adding a second controller to play with a friend, again that requires manually adding a second slot, selecting the controller and the profile. What this feature aims to do is to have the possibility to do all of this automatically.\r\n\r\nIn order to achieve that, the code must know what profile you would like to select for a particular controller. That’s why when a controller is connected the code searches for `SDL Auto Assignment + DEVICE_NAME.ini` where `DEVICE_NAME` is the controller name given by SDL library (the one that is shown in the Device list inside the controller configuration), in the case of the Xbox Controller the code might search something like `SDL Auto Assignment Xbox One X Controller.ini` (please note that this is just a placeholder, if you don’t like that particular name I’m more than open to accept ideas)\r\n\r\nThe question that arises then is what happens when you connect a controller that has not been previously configured. This is why the creation of a default layout (that would be used as a “fallback layout” as I said before) looked to me as a good option. \r\n\r\nHaving said that, I understand that after explaining my point, this does not motivate by itself the creation of a default layout, particularly if it gives users the impression that it will work well with every game. But I still need to resolve what happens when we connect a SDL gamepad that has not been configured before. \r\n\r\nThree options come to my mind:\r\n\r\n**Option 1 - Letting the default configuration as a fallback**\r\n\r\nLet the default layout idea as it is (the layout itself can be changed however you prefer), so this configuration is used as a fallback option when no config is specified. I understand this option has several problems.\r\n\r\n**Option 2 - Let the users create a fallback configuration by themselves**\r\n\r\nAnother idea would be not providing a default layout, but letting the users create a default one by themselves.\r\n\r\nFor example, if users create a config called `SDL Auto Assignment Default.ini` it could be used as the fallback if no specific configuration is found. \r\n\r\nPersonally, I think this option would also be great if option 1 is not suitable.\r\n\r\n**Option 3 - No configuration at all**\r\n\r\nThe last option that I can think of is just selecting the SDL device but with a “void” layout. No buttons are mapped until the user manually does it or creates a specific configuration for that controller.\r\n\r\nIf you have any other idea that might fix this issue and you consider it a better solution I am more than open to discuss it.\r\n\r\n> Finally, forgive me if I\'m wrong, but there is a lot about how your post is structured that smells like AI. That\'s fine, our project has no issue with LLM use in this part of our code, as this doesn\'t touch any emulation bits. Buuut I and many other developers would appreciate a clear disclosure of any LLM use.\r\n\r\nAbout this topic, you are not wrong at all and I have used AI tools for this PR. I’m so sorry I didn’t add a disclaimer in the first comment, it was not my intention to hide it.\r\n\r\nTo make things clear. AI tools have been used in three different ways:\r\n\r\n- **Investigation:** Although I have a programming background I have no experience with Dolphin Emulator codebase. I have used AI to better understand the code and what parts I had to change to create this feature.\r\n- **Bug fixes & Refactoring:** In order to search for hidden bugs that I might have introduced, I have used AI tools to review the added changes. In addition to that, I also have also used it to refactor or change parts of the code that I was not originally very happy with.\r\n- **Comments:** I have used AI to comment all the changes in the code, the comments from the PR have been fully AI generated. I know that AI can result in verbose comments sometimes but considering that other people had to review it and might have questions about specific parts of the code I prefer to have more than less. I’m happy to revise or remove them where appropriate.\r\n\r\nIf you want me to add a disclaimer in the first comment or in any other part I have no complaints to do so.\r\n\r\nI think I haven’t left anything unsaid but again do not hesitate to reach me back for any other open question.', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6386759630/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T16:13:41Z', 'pushed_at': '2026-10-24T12:16:22Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 482, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'RubGarFue', 'id': 62031291, 'node_id': 'MDQ6VXNlcjYyMDMxMjkx', 'avatar_url': 'https://avatars.githubusercontent.com/u/62031291?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/RubGarFue', 'html_url': 'https://github.com/RubGarFue', 'followers_url': 'https://api.github.com/users/RubGarFue/followers', 'following_url': 'https://api.github.com/users/RubGarFue/following{/other_user}', 'gists_url': 'https://api.github.com/users/RubGarFue/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/RubGarFue/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/RubGarFue/subscriptions', 'organizations_url': 'https://api.github.com/users/RubGarFue/orgs', 'repos_url': 'https://api.github.com/users/RubGarFue/repos', 'events_url': 'https://api.github.com/users/RubGarFue/events{/privacy}', 'received_events_url': 'https://api.github.com/users/RubGarFue/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T12:57:45.704964 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'SirJazz', 'action': 'created', 'id': 14878, 'title': 'Android: Add global hotkeys', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14878#issuecomment-6384491929', 'safe_author': False, 'body': 'Thanks! Waiting for this to get merged!', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14878', 'id': 5503582670, 'node_id': 'PR_kwDOALCn2M8AAAABEIV7mA', 'number': 14878, 'title': 'Android: Add global hotkeys', 'user': {'login': 'vhoxha08', 'id': 5047177, 'node_id': 'MDQ6VXNlcjUwNDcxNzc=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5047177?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/vhoxha08', 'html_url': 'https://github.com/vhoxha08', 'followers_url': 'https://api.github.com/users/vhoxha08/followers', 'following_url': 'https://api.github.com/users/vhoxha08/following{/other_user}', 'gists_url': 'https://api.github.com/users/vhoxha08/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/vhoxha08/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/vhoxha08/subscriptions', 'organizations_url': 'https://api.github.com/users/vhoxha08/orgs', 'repos_url': 'https://api.github.com/users/vhoxha08/repos', 'events_url': 'https://api.github.com/users/vhoxha08/events{/privacy}', 'received_events_url': 'https://api.github.com/users/vhoxha08/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 6, 'created_at': '2026-09-18T19:00:59Z', 'updated_at': '2026-10-24T12:57:43Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14878', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14878', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14878.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14878.patch', 'merged_at': None}, 'body': 'New global Hotkeys section.\r\n\r\nOnly a subset of the Desktop hotkeys is added for now:\r\n\r\n- Take Screenshot\r\n- Toggle turbo Mode\r\n- Inc/Dec Emulation Speed\r\n- Inc/Dec Internal resolution\r\n- All the save/load state Hotkeys\r\n\r\n<img width="540" height="1200" alt="Screenshot_20260918_205623" src="https://github.com/user-attachments/assets/4178a639-844f-484e-b2b5-a05bf4ef87a0" />\r\n<img width="540" height="1200" alt="Screenshot_20260918_205652" src="https://github.com/user-attachments/assets/bad2f7e4-bdb3-4f71-bbc3-c9bfae4996dc" />\r\n', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878/reactions', 'total_count': 3, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 3, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6384491929', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14878#issuecomment-6384491929', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14878', 'id': 6384491929, 'node_id': 'IC_kwDOALCn2M8AAAABfIudmQ', 'user': {'login': 'SirJazz', 'id': 65920663, 'node_id': 'MDQ6VXNlcjY1OTIwNjYz', 'avatar_url': 'https://avatars.githubusercontent.com/u/65920663?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SirJazz', 'html_url': 'https://github.com/SirJazz', 'followers_url': 'https://api.github.com/users/SirJazz/followers', 'following_url': 'https://api.github.com/users/SirJazz/following{/other_user}', 'gists_url': 'https://api.github.com/users/SirJazz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SirJazz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SirJazz/subscriptions', 'organizations_url': 'https://api.github.com/users/SirJazz/orgs', 'repos_url': 'https://api.github.com/users/SirJazz/repos', 'events_url': 'https://api.github.com/users/SirJazz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SirJazz/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T12:57:43Z', 'updated_at': '2026-10-24T12:57:43Z', 'body': 'Thanks! Waiting for this to get merged!', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6384491929/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T12:16:34Z', 'pushed_at': '2026-10-24T12:16:22Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'SirJazz', 'id': 65920663, 'node_id': 'MDQ6VXNlcjY1OTIwNjYz', 'avatar_url': 'https://avatars.githubusercontent.com/u/65920663?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SirJazz', 'html_url': 'https://github.com/SirJazz', 'followers_url': 'https://api.github.com/users/SirJazz/followers', 'following_url': 'https://api.github.com/users/SirJazz/following{/other_user}', 'gists_url': 'https://api.github.com/users/SirJazz/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SirJazz/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SirJazz/subscriptions', 'organizations_url': 'https://api.github.com/users/SirJazz/orgs', 'repos_url': 'https://api.github.com/users/SirJazz/repos', 'events_url': 'https://api.github.com/users/SirJazz/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SirJazz/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T10:10:37.781109 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6382944082', 'safe_author': True, 'body': "> It should be noted that on the x86 side, a zero extension is used instead. Not sure which one is more correct.\r\n\r\nIt's declared as an `int` in C++, and since it gets subtracted in a few places in CoreTiming.cpp, I guess it can end up negative? So sign extending looks correct to me.\r\n\r\n> Just for curiosity, will performing add first instead of subtraction lead to an overflow?\r\n\r\nThe end result is the exact same.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'id': 5986126364, 'node_id': 'PR_kwDOALCn2M8AAAABKGoKDw', 'number': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 3, 'created_at': '2026-10-22T19:32:23Z', 'updated_at': '2026-10-24T10:10:35Z', 'closed_at': None, 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14944', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.patch', 'merged_at': None}, 'body': 'This instruction effectively performs the following computation:\n\n```\nXresult = SXTW(slice_length) - Xresult + global_timer;\n```\n\nARM64 has a dedicated sign extension instruction, but also allows this sign extension to happen as part of many arithmetic operations. By reordering the computation, we can take advantage of this:\n\n```\nXresult = global_timer + SXTW(slice_length) - Xresult;\n```\n\nBefore:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nsxtw x23, w23\nsub x25, x23, x25\nadd x25, x25, x24\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```\n\nAfter:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nadd x24, x24, w23, sxtw\nsub x25, x24, x25\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382944082', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6382944082', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'id': 6382944082, 'node_id': 'IC_kwDOALCn2M8AAAABfHP_Ug', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T10:10:35Z', 'updated_at': '2026-10-24T10:10:35Z', 'body': "> It should be noted that on the x86 side, a zero extension is used instead. Not sure which one is more correct.\r\n\r\nIt's declared as an `int` in C++, and since it gets subtracted in a few places in CoreTiming.cpp, I guess it can end up negative? So sign extending looks correct to me.\r\n\r\n> Just for curiosity, will performing add first instead of subtraction lead to an overflow?\r\n\r\nThe end result is the exact same.", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382944082/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T08:57:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T09:33:06.661468 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14939, 'title': 'PPCAnalyst: Avoid using strncmp', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14939#issuecomment-6382596317', 'safe_author': True, 'body': 'How about adding some helper functions akin to the existing `IsMfspr` and `IsMtspr` functions in this file? It would be easier to read than the code you currently have in this PR.', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14939', 'id': 5920925723, 'node_id': 'PR_kwDOALCn2M8AAAABJSmc5g', 'number': 14939, 'title': 'PPCAnalyst: Avoid using strncmp', 'user': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-10-19T09:01:36Z', 'updated_at': '2026-10-24T09:33:05Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14939', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14939', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14939.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14939.patch', 'merged_at': None}, 'body': "Its usage appears in the profiler, and while small, it's not completely insignificant.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382596317', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14939#issuecomment-6382596317', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14939', 'id': 6382596317, 'node_id': 'IC_kwDOALCn2M8AAAABfG6w3Q', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T09:33:04Z', 'updated_at': '2026-10-24T09:33:04Z', 'body': 'How about adding some helper functions akin to the existing `IsMfspr` and `IsMtspr` functions in this file? It would be easier to read than the code you currently have in this PR.', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382596317/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T08:57:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T09:28:33.865081 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14938, 'title': 'Interpreter: Fix FPCC mask in float compares', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14938#issuecomment-6382554937', 'safe_author': True, 'body': 'Was AI used for making this change?', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14938', 'id': 5914402282, 'node_id': 'PR_kwDOALCn2M8AAAABJNbsZg', 'number': 14938, 'title': 'Interpreter: Fix FPCC mask in float compares', 'user': {'login': 'Remenby31', 'id': 95361301, 'node_id': 'U_kgDOBa8ZFQ', 'avatar_url': 'https://avatars.githubusercontent.com/u/95361301?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Remenby31', 'html_url': 'https://github.com/Remenby31', 'followers_url': 'https://api.github.com/users/Remenby31/followers', 'following_url': 'https://api.github.com/users/Remenby31/following{/other_user}', 'gists_url': 'https://api.github.com/users/Remenby31/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Remenby31/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Remenby31/subscriptions', 'organizations_url': 'https://api.github.com/users/Remenby31/orgs', 'repos_url': 'https://api.github.com/users/Remenby31/repos', 'events_url': 'https://api.github.com/users/Remenby31/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Remenby31/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-18T21:38:51Z', 'updated_at': '2026-10-24T09:28:32Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14938', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14938', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14938.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14938.patch', 'merged_at': None}, 'body': '## Why\n`fcmpo` and `fcmpu` in the interpreter clear the old FPCC bits with `FPCC_MASK`, but `FPCC_MASK` is shifted by `FPRF_SHIFT` while `fpscr.FPRF` is the unshifted 5-bit field. The mask clears nothing, so FPCC bits from earlier compares accumulate in FPRF. The JITs clear the right bits since #9810.\n\n## What changed\n- `Helper_FloatCompareOrdered` and `Helper_FloatCompareUnordered` clear `FPCC_MASK >> FPRF_SHIFT` before they set the new result.\n\n## Scope\n- Interpreter only. Jit64 and JitArm64 already behave this way.\n- No change to the CR field update.\n\n## Blast Radius\nOnly titles that read FPSCR after two or more float compares in the interpreter or the cached interpreter see a difference. They now match Jit64 and the IBM 750CL manual.\n\n## Verification\n- In a downstream build, a JIT-vs-interpreter oracle over `fcmpo`/`fcmpu` sequences reported FPRF mismatches before this change and none after.\n', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382554937', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14938#issuecomment-6382554937', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14938', 'id': 6382554937, 'node_id': 'IC_kwDOALCn2M8AAAABfG4POQ', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T09:28:32Z', 'updated_at': '2026-10-24T09:28:32Z', 'body': 'Was AI used for making this change?', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382554937/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T08:57:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T09:24:39.323848 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14937, 'title': 'Docs: explain real Wii Remote pairing on macOS and Tahoe failures', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14937#issuecomment-6382517129', 'safe_author': True, 'body': "We don't accept AI-generated contributions that haven't been reviewed by the submitter.\r\n\r\nAlso, Dolphin users don't read documentation that's located in the git repository, so this wouldn't be of much use even if if had been human written.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14937', 'id': 5913357024, 'node_id': 'PR_kwDOALCn2M8AAAABJMnzvg', 'number': 14937, 'title': 'Docs: explain real Wii Remote pairing on macOS and Tahoe failures', 'user': {'login': 'GUUDIN', 'id': 86815140, 'node_id': 'MDQ6VXNlcjg2ODE1MTQw', 'avatar_url': 'https://avatars.githubusercontent.com/u/86815140?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/GUUDIN', 'html_url': 'https://github.com/GUUDIN', 'followers_url': 'https://api.github.com/users/GUUDIN/followers', 'following_url': 'https://api.github.com/users/GUUDIN/following{/other_user}', 'gists_url': 'https://api.github.com/users/GUUDIN/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/GUUDIN/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/GUUDIN/subscriptions', 'organizations_url': 'https://api.github.com/users/GUUDIN/orgs', 'repos_url': 'https://api.github.com/users/GUUDIN/repos', 'events_url': 'https://api.github.com/users/GUUDIN/events{/privacy}', 'received_events_url': 'https://api.github.com/users/GUUDIN/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-18T19:35:57Z', 'updated_at': '2026-10-24T09:24:37Z', 'closed_at': '2026-10-24T09:24:36Z', 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': True, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14937', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14937', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14937.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14937.patch', 'merged_at': None}, 'body': "Users can select Real Wii Remote and enable Continuous Scanning on macOS without realizing that host Bluetooth pairing must succeed before Dolphin's HID backend can use the remote. A first-time pairing failure can therefore look like a Dolphin controller configuration problem.\n\nAdd a README-linked macOS pairing guide covering WiimotePair, the red SYNC button for first-time pairing, quitting the utility before handing off to Dolphin, normal-button reconnection, permissions, and the distinction from Bluetooth passthrough. The Tahoe troubleshooting section links to dolphin-emu/WiimotePair#17 and dolphin-emu/WiimotePair#20, with an explicit note to check fix/build availability rather than assuming the old download includes it.\n\nThe companion WiimotePair workaround was physically tested with an original RVL-CNT-01 on macOS 26.5 (25F71); the human tester confirmed connection in Dolphin 2609a. Other models and macOS releases are not claimed as tested. This PR only changes documentation; it does not change emulation or input backend behavior.\n\nValidation: reviewed instructions against the installed Dolphin 2609a controller UI and the successful local pairing workflow; checked the local relative link and public repository/issue/PR links; `git diff --check` passes. No executable code changed, so Dolphin was not rebuilt.\n\nAI disclosure, per Contributing.md: the new guide, README paragraph, and this PR description were drafted by OpenAI Codex at the account owner's request. The hardware connection was confirmed by the human tester. Draft for human/maintainer review; no claim of prior human source/documentation review is made.\n", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382517129', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14937#issuecomment-6382517129', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14937', 'id': 6382517129, 'node_id': 'IC_kwDOALCn2M8AAAABfG17iQ', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T09:24:36Z', 'updated_at': '2026-10-24T09:24:36Z', 'body': "We don't accept AI-generated contributions that haven't been reviewed by the submitter.\r\n\r\nAlso, Dolphin users don't read documentation that's located in the git repository, so this wouldn't be of much use even if if had been human written.", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382517129/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T08:57:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-24T09:17:01.673679 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'mzji', 'action': 'created', 'id': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6382435613', 'safe_author': False, 'body': 'Just for curiosity, will performing add first instead of subtraction lead to an overflow?', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'id': 5986126364, 'node_id': 'PR_kwDOALCn2M8AAAABKGoKDw', 'number': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-10-22T19:32:23Z', 'updated_at': '2026-10-24T09:16:59Z', 'closed_at': None, 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14944', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.patch', 'merged_at': None}, 'body': 'This instruction effectively performs the following computation:\n\n```\nXresult = SXTW(slice_length) - Xresult + global_timer;\n```\n\nARM64 has a dedicated sign extension instruction, but also allows this sign extension to happen as part of many arithmetic operations. By reordering the computation, we can take advantage of this:\n\n```\nXresult = global_timer + SXTW(slice_length) - Xresult;\n```\n\nBefore:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nsxtw x23, w23\nsub x25, x23, x25\nadd x25, x25, x24\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```\n\nAfter:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nadd x24, x24, w23, sxtw\nsub x25, x24, x25\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382435613', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6382435613', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'id': 6382435613, 'node_id': 'IC_kwDOALCn2M8AAAABfGw9HQ', 'user': {'login': 'mzji', 'id': 23279426, 'node_id': 'MDQ6VXNlcjIzMjc5NDI2', 'avatar_url': 'https://avatars.githubusercontent.com/u/23279426?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mzji', 'html_url': 'https://github.com/mzji', 'followers_url': 'https://api.github.com/users/mzji/followers', 'following_url': 'https://api.github.com/users/mzji/following{/other_user}', 'gists_url': 'https://api.github.com/users/mzji/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mzji/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mzji/subscriptions', 'organizations_url': 'https://api.github.com/users/mzji/orgs', 'repos_url': 'https://api.github.com/users/mzji/repos', 'events_url': 'https://api.github.com/users/mzji/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mzji/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-24T09:16:59Z', 'updated_at': '2026-10-24T09:16:59Z', 'body': 'Just for curiosity, will performing add first instead of subtraction lead to an overflow?', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6382435613/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T08:57:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'mzji', 'id': 23279426, 'node_id': 'MDQ6VXNlcjIzMjc5NDI2', 'avatar_url': 'https://avatars.githubusercontent.com/u/23279426?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/mzji', 'html_url': 'https://github.com/mzji', 'followers_url': 'https://api.github.com/users/mzji/followers', 'following_url': 'https://api.github.com/users/mzji/following{/other_user}', 'gists_url': 'https://api.github.com/users/mzji/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/mzji/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/mzji/subscriptions', 'organizations_url': 'https://api.github.com/users/mzji/orgs', 'repos_url': 'https://api.github.com/users/mzji/repos', 'events_url': 'https://api.github.com/users/mzji/events{/privacy}', 'received_events_url': 'https://api.github.com/users/mzji/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-23T20:18:06.504008 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'sepalani', 'action': 'created', 'id': 14321, 'title': 'IOS/KBD: Move keyboard logic to InputCommon', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14321#issuecomment-6373903181', 'safe_author': True, 'body': 'I rebased the PR and fixed several flaws:\r\n - Moved the code to `InputCommon` instead of `Common` to avoid adding a `Core` dependency to `Common`. Plus there already is a keyboard related file there (i.e. `KeyboardStatus.h`).\r\n - I forgot to skip ignored keys (0x00) when checking pressed keys.\r\n - I forgot to add back the `USBKeyboardConnectionChanged` signal.\r\n - Use the mutex before accessing `s_keyboard_context` to avoid races between `GetInstance` and `Notify*` methods.\r\n - I made `m_keyboard_layout` atomic because there might be a race when changing the layout and using `PollHIDPressedKeys`.', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14321', 'id': 3900399066, 'node_id': 'PR_kwDOALCn2M7BqoiX', 'number': 14321, 'title': 'IOS/KBD: Move keyboard logic to InputCommon', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [{'id': 1667502011, 'node_id': 'MDU6TGFiZWwxNjY3NTAyMDEx', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels/needs%20rebase', 'name': 'needs rebase', 'color': '053663', 'default': False, 'description': '', 'archived_at': None, 'archived_by': None}], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-02-05T08:47:02Z', 'updated_at': '2026-10-23T20:18:04Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14321', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14321', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14321.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14321.patch', 'merged_at': None}, 'body': 'A split version of https://github.com/dolphin-emu/dolphin/pull/13623. This PR only moves the keyboard logic to Common/Keyboard.\r\n\r\nIn other words, the Wii\'s `Connect USB Keyboard` feature is still Windows only. It can be tested on the Wii Menu Message Board\'s Create Message, then Memo, and click on the Write a memo card:\r\n<img width="1383" height="1051" alt="image" src="https://github.com/user-attachments/assets/e39ae86c-72c3-48d8-9188-1faa8598559f" />\r\n<img width="1383" height="1053" alt="image" src="https://github.com/user-attachments/assets/b6579703-0ba4-4308-9eb0-8805a6bc639a" />\r\n\r\nReady to be reviewed & merged.', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6373903181', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14321#issuecomment-6373903181', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14321', 'id': 6373903181, 'node_id': 'IC_kwDOALCn2M8AAAABe-oLTQ', 'user': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-23T20:18:04Z', 'updated_at': '2026-10-23T20:18:04Z', 'body': 'I rebased the PR and fixed several flaws:\r\n - Moved the code to `InputCommon` instead of `Common` to avoid adding a `Core` dependency to `Common`. Plus there already is a keyboard related file there (i.e. `KeyboardStatus.h`).\r\n - I forgot to skip ignored keys (0x00) when checking pressed keys.\r\n - I forgot to add back the `USBKeyboardConnectionChanged` signal.\r\n - Use the mutex before accessing `s_keyboard_context` to avoid races between `GetInstance` and `Notify*` methods.\r\n - I made `m_keyboard_layout` atomic because there might be a race when changing the layout and using `PollHIDPressedKeys`.', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6373903181/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-23T17:48:39Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15701, 'watchers_count': 15701, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3349, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3349, 'open_issues': 482, 'watchers': 15701, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'sepalani', 'id': 7890055, 'node_id': 'MDQ6VXNlcjc4OTAwNTU=', 'avatar_url': 'https://avatars.githubusercontent.com/u/7890055?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/sepalani', 'html_url': 'https://github.com/sepalani', 'followers_url': 'https://api.github.com/users/sepalani/followers', 'following_url': 'https://api.github.com/users/sepalani/following{/other_user}', 'gists_url': 'https://api.github.com/users/sepalani/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/sepalani/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/sepalani/subscriptions', 'organizations_url': 'https://api.github.com/users/sepalani/orgs', 'repos_url': 'https://api.github.com/users/sepalani/repos', 'events_url': 'https://api.github.com/users/sepalani/events{/privacy}', 'received_events_url': 'https://api.github.com/users/sepalani/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-23T14:36:08.311759 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'created', 'id': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367395701', 'safe_author': True, 'body': "> Oh, I didn't see you were also working on it. Should I close this so that you can PR yours?\n\nI might not be able to get to it until tomorrow, if you can get it up before that I don't mind :p ", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'id': 5999136809, 'node_id': 'PR_kwDOALCn2M8AAAABKRApMQ', 'number': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'user': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 3, 'created_at': '2026-10-23T13:58:33Z', 'updated_at': '2026-10-23T14:36:06Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14945', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.patch', 'merged_at': None}, 'body': "When compilers are supplied with multiple conflicting settings about warnings, only the last one is considered.\nIn fact, removing existing flags is dangerous because starting with `w` or `W` doesn't necessarily mean that are about warnings (like `-Wl`, which is about linking).\nThis fixes on my end (Fedora 44 container, devel dependencies) the building of implot, broken by #14793.\nTested on GCC 16.2.1 that dependencies still print no warnings.\n\n(I'm unfamiliar with CMake, so I'm not sure that what I'm doing is right.)", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367395701', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367395701', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'id': 6367395701, 'node_id': 'IC_kwDOALCn2M8AAAABe4a_dQ', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-23T14:36:06Z', 'updated_at': '2026-10-23T14:36:06Z', 'body': "> Oh, I didn't see you were also working on it. Should I close this so that you can PR yours?\n\nI might not be able to get to it until tomorrow, if you can get it up before that I don't mind :p ", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367395701/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-23T13:32:22Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15700, 'watchers_count': 15700, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3350, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3350, 'open_issues': 481, 'watchers': 15700, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-23T14:30:43.468894 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'SuperSamus', 'action': 'created', 'id': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367284781', 'safe_author': True, 'body': "Oh, I didn't see you were also working on it. Should I close this so that you can PR yours?\r\n\r\n> I'm not sure what's up with the OSX builder though.\r\n\r\nI was just going to comment about it...", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'id': 5999136809, 'node_id': 'PR_kwDOALCn2M8AAAABKRApMQ', 'number': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'user': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-10-23T13:58:33Z', 'updated_at': '2026-10-23T14:30:40Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14945', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.patch', 'merged_at': None}, 'body': "When compilers are supplied with multiple conflicting settings about warnings, only the last one is considered.\nIn fact, removing existing flags is dangerous because starting with `w` or `W` doesn't necessarily mean that are about warnings (like `-Wl`, which is about linking).\nThis fixes on my end (Fedora 44 container, devel dependencies) the building of implot, broken by #14793.\nTested on GCC 16.2.1 that dependencies still print no warnings.\n\n(I'm unfamiliar with CMake, so I'm not sure that what I'm doing is right.)", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367284781', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367284781', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'id': 6367284781, 'node_id': 'IC_kwDOALCn2M8AAAABe4UOLQ', 'user': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-23T14:30:40Z', 'updated_at': '2026-10-23T14:30:40Z', 'body': "Oh, I didn't see you were also working on it. Should I close this so that you can PR yours?\r\n\r\n> I'm not sure what's up with the OSX builder though.\r\n\r\nI was just going to comment about it...", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367284781/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-23T13:32:22Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15700, 'watchers_count': 15700, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3350, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3350, 'open_issues': 481, 'watchers': 15700, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-23T14:26:39.252854 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'created', 'id': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367202034', 'safe_author': True, 'body': "Sadly they are needed on MSVC, where it will yell at us if we have duplicate /W flags. I'm not sure what's up with the OSX builder though. I've been wanting to work on it but sadly haven't had the free time, you can see my progress on https://github.com/JoshuaVandaele/dolphin/tree/w-flags-fix", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'id': 5999136809, 'node_id': 'PR_kwDOALCn2M8AAAABKRApMQ', 'number': 14945, 'title': "CMake: Don't remove existing options when suppressing warnings", 'user': {'login': 'SuperSamus', 'id': 40663462, 'node_id': 'MDQ6VXNlcjQwNjYzNDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/40663462?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/SuperSamus', 'html_url': 'https://github.com/SuperSamus', 'followers_url': 'https://api.github.com/users/SuperSamus/followers', 'following_url': 'https://api.github.com/users/SuperSamus/following{/other_user}', 'gists_url': 'https://api.github.com/users/SuperSamus/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/SuperSamus/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/SuperSamus/subscriptions', 'organizations_url': 'https://api.github.com/users/SuperSamus/orgs', 'repos_url': 'https://api.github.com/users/SuperSamus/repos', 'events_url': 'https://api.github.com/users/SuperSamus/events{/privacy}', 'received_events_url': 'https://api.github.com/users/SuperSamus/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-23T13:58:33Z', 'updated_at': '2026-10-23T14:26:37Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14945', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14945.patch', 'merged_at': None}, 'body': "When compilers are supplied with multiple conflicting settings about warnings, only the last one is considered.\nIn fact, removing existing flags is dangerous because starting with `w` or `W` doesn't necessarily mean that are about warnings (like `-Wl`, which is about linking).\nThis fixes on my end (Fedora 44 container, devel dependencies) the building of implot, broken by #14793.\nTested on GCC 16.2.1 that dependencies still print no warnings.\n\n(I'm unfamiliar with CMake, so I'm not sure that what I'm doing is right.)", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367202034', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14945#issuecomment-6367202034', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14945', 'id': 6367202034, 'node_id': 'IC_kwDOALCn2M8AAAABe4PK8g', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-23T14:26:37Z', 'updated_at': '2026-10-23T14:26:37Z', 'body': "Sadly they are needed on MSVC, where it will yell at us if we have duplicate /W flags. I'm not sure what's up with the OSX builder though. I've been wanting to work on it but sadly haven't had the free time, you can see my progress on https://github.com/JoshuaVandaele/dolphin/tree/w-flags-fix", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6367202034/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-23T13:32:22Z', 'pushed_at': '2026-10-22T20:05:23Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561397, 'stargazers_count': 15700, 'watchers_count': 15700, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3350, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3350, 'open_issues': 481, 'watchers': 15700, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-22T19:35:37.338150 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'created', 'id': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6349571204', 'safe_author': True, 'body': 'It should be noted that on the x86 side, a zero extension is used instead. Not sure which one is more correct.', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'id': 5986126364, 'node_id': 'PR_kwDOALCn2M8AAAABKGoKDw', 'number': 14944, 'title': 'JitArm64_SystemRegister: mfspr - Sign extension nit', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-22T19:32:23Z', 'updated_at': '2026-10-22T19:35:35Z', 'closed_at': None, 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14944', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14944.patch', 'merged_at': None}, 'body': 'This instruction effectively performs the following computation:\n\n```\nXresult = SXTW(slice_length) - Xresult + global_timer;\n```\n\nARM64 has a dedicated sign extension instruction, but also allows this sign extension to happen as part of many arithmetic operations. By reordering the computation, we can take advantage of this:\n\n```\nXresult = global_timer + SXTW(slice_length) - Xresult;\n```\n\nBefore:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nsxtw x23, w23\nsub x25, x23, x25\nadd x25, x25, x24\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```\n\nAfter:\n```\nldr w24, [x29, #0x2f0]\nscvtf s8, w24\nldr s9, [x27, #0x20]\nfmul s8, s8, s9\nfcvtzs x25, s8\nldp x24, x23, [x27]\nadd x24, x24, w23, sxtw\nsub x25, x24, x25\nldp x24, x23, [x27, #0x10]\nsub x25, x25, x23\nmov x23, #-0x5555555555555556 ; =-6148914691236517206\nadd x23, x23, #0x1\numulh x25, x25, x23\nadd x25, x24, x25, lsr #3\nstr x25, [x29, #0x770]\n```', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6349571204', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14944#issuecomment-6349571204', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14944', 'id': 6349571204, 'node_id': 'IC_kwDOALCn2M8AAAABenbEhA', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-22T19:35:35Z', 'updated_at': '2026-10-22T19:35:35Z', 'body': 'It should be noted that on the x86 side, a zero extension is used instead. Not sure which one is more correct.', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6349571204/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-22T19:14:53Z', 'pushed_at': '2026-10-22T19:14:47Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561369, 'stargazers_count': 15698, 'watchers_count': 15698, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3347, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3347, 'open_issues': 481, 'watchers': 15698, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-20T20:17:00.222387 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14941, 'title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14941#issuecomment-6300546500', 'safe_author': True, 'body': "> Shall I update the copyright notice year from 2020 to 2026 while I'm already editing this file?\r\n\r\nNo. You can leave it as-is.", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941', 'id': 5932029553, 'node_id': 'PR_kwDOALCn2M8AAAABJbhwyQ', 'number': 14941, 'title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'user': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-10-19T21:41:44Z', 'updated_at': '2026-10-20T20:16:58Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': True, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.patch', 'merged_at': None}, 'body': '### This is an LLM assisted PR.\r\nIt is meant to fix the following crash reported in the forum: https://forums.dolphin-emu.org/Thread-assertion-crash-when-adjusting-a-slider-in-the-ui\r\n\r\nWhile I have tested the changes made by the LLM and have confirmed, that I can no longer trigger the crash with the code changes, I can not take responsibility for the code changes, as I do not have a deep enough understanding of the code (which is a requirement for LLM assisted code changes to be accepted into Dolphin according to the contribution guidelines).\r\n\r\nI can not say for certain if this is a band-aid solution and if there still is an underlying error, but with this fix applied, Dolphin (debug build) no longer crashes, and Dolphin (release build) no longer throws an error output in the terminal when trying to reproduce the crash.\r\n\r\nSteps to reproduce the crash were:\r\n\r\nOn a debug build of Dolphin: On any slider in the UI: Click and hold LMB not on the current slider position, but to the side of it. Hold the cursor still while keeping LMB pressed.\r\n\r\nThe LLM suggested it might be an issue with the tooltip timer, and this is the LLM generated explanation for the code change:\r\n\r\n"A queued QTimerEvent can be dispatched after the timer was already killed (Qt recycles timer ids), e.g. when a slider is dragged and enter/leave events fire in rapid succession. In that case m_timer_id is empty and dereferencing it in timerEvent() asserts on \'this->_M_is_engaged()\' in debug builds, while in release builds it passes a garbage timer id to killTimer().\r\n\r\nOnly process the event if it matches the timer we are tracking, which also prevents showing a balloon for a stale event."', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6300546500', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941#issuecomment-6300546500', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941', 'id': 6300546500, 'node_id': 'IC_kwDOALCn2M8AAAABd4q1xA', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-20T20:16:58Z', 'updated_at': '2026-10-20T20:16:58Z', 'body': "> Shall I update the copyright notice year from 2020 to 2026 while I'm already editing this file?\r\n\r\nNo. You can leave it as-is.", 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6300546500/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-20T16:50:20Z', 'pushed_at': '2026-10-19T16:56:21Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561367, 'stargazers_count': 15694, 'watchers_count': 15694, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3340, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3340, 'open_issues': 481, 'watchers': 15694, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
2026-10-20T20:14:02.408820 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'debug687', 'action': 'created', 'id': 14941, 'title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14941#issuecomment-6300489301', 'safe_author': False, 'body': "Shall I update the copyright notice year from 2020 to 2026 while I'm already editing this file?", 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941', 'id': 5932029553, 'node_id': 'PR_kwDOALCn2M8AAAABJbhwyQ', 'number': 14941, 'title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'user': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-19T21:41:44Z', 'updated_at': '2026-10-20T20:14:00Z', 'closed_at': None, 'assignee': None, 'author_association': 'NONE', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': True, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.patch', 'merged_at': None}, 'body': '### This is an LLM assisted PR.\r\nIt is meant to fix the following crash reported in the forum: https://forums.dolphin-emu.org/Thread-assertion-crash-when-adjusting-a-slider-in-the-ui\r\n\r\nWhile I have tested the changes made by the LLM and have confirmed, that I can no longer trigger the crash with the code changes, I can not take responsibility for the code changes, as I do not have a deep enough understanding of the code (which is a requirement for LLM assisted code changes to be accepted into Dolphin according to the contribution guidelines).\r\n\r\nI can not say for certain if this is a band-aid solution and if there still is an underlying error, but with this fix applied, Dolphin (debug build) no longer crashes, and Dolphin (release build) no longer throws an error output in the terminal when trying to reproduce the crash.\r\n\r\nSteps to reproduce the crash were:\r\n\r\nOn a debug build of Dolphin: On any slider in the UI: Click and hold LMB not on the current slider position, but to the side of it. Hold the cursor still while keeping LMB pressed.\r\n\r\nThe LLM suggested it might be an issue with the tooltip timer, and this is the LLM generated explanation for the code change:\r\n\r\n"A queued QTimerEvent can be dispatched after the timer was already killed (Qt recycles timer ids), e.g. when a slider is dragged and enter/leave events fire in rapid succession. In that case m_timer_id is empty and dereferencing it in timerEvent() asserts on \'this->_M_is_engaged()\' in debug builds, while in release builds it passes a garbage timer id to killTimer().\r\n\r\nOnly process the event if it matches the timer we are tracking, which also prevents showing a balloon for a stale event."', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6300489301', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941#issuecomment-6300489301', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941', 'id': 6300489301, 'node_id': 'IC_kwDOALCn2M8AAAABd4nWVQ', 'user': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-20T20:14:00Z', 'updated_at': '2026-10-20T20:14:00Z', 'body': "Shall I update the copyright notice year from 2020 to 2026 while I'm already editing this file?", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6300489301/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-20T16:50:20Z', 'pushed_at': '2026-10-19T16:56:21Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561367, 'stargazers_count': 15694, 'watchers_count': 15694, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3340, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3340, 'open_issues': 481, 'watchers': 15694, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'gh_issue_comment'}
Recent 'gh_pull_request' events
2026-10-25T06:51:01.747207 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'review_requested', 'id': 14906, 'title': 'Triforce region flag added to dolphin.ini', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14906', 'head_ref_name': 'triforce_region', 'safe_author': True, 'base_sha': '24c80c5a32d9429bcd8e7b0b90d7b61763782009', 'head_sha': 'ecb1a7b69d0da4f7c227913156755f3e92a51cfb', 'merged': False, 'requested_reviewers': [{'login': 'JMC47', 'id': 6598209, 'node_id': 'MDQ6VXNlcjY1OTgyMDk=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6598209?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JMC47', 'html_url': 'https://github.com/JMC47', 'followers_url': 'https://api.github.com/users/JMC47/followers', 'following_url': 'https://api.github.com/users/JMC47/following{/other_user}', 'gists_url': 'https://api.github.com/users/JMC47/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JMC47/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JMC47/subscriptions', 'organizations_url': 'https://api.github.com/users/JMC47/orgs', 'repos_url': 'https://api.github.com/users/JMC47/repos', 'events_url': 'https://api.github.com/users/JMC47/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JMC47/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}], 'type': 'gh_pull_request'}
2026-10-25T06:35:45.795053 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'opened', 'id': 14952, 'title': 'Common/Thread: Remove some unused things.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14952', 'head_ref_name': 'common-thread-remove-unused', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-25T06:07:40.976545 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14933, 'title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933', 'head_ref_name': 'hookable-event-better', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-25T04:00:55.532221 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'opened', 'id': 14951, 'title': 'Core/TimePlayed: Decouple the TimePlayed tracker thread from CPUManager.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14951', 'head_ref_name': 'time-played-cpumanager-decouple', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-25T01:28:44.333925 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14950, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'head_ref_name': 'libusb-context-shutdown-race-fix', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-25T01:12:46.470652 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'opened', 'id': 14950, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'head_ref_name': 'libusb-context-shutdown-race-fix', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '68f8e74036cf535e7552cd43e44f7a981293b4ef', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T23:17:07.357600 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'synchronize', 'id': 14916, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'head_ref_name': 'vertex_manager_draw_refactor', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '62fc846755d4692168a26a707c7784e6198f641a', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T23:11:39.086178 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'synchronize', 'id': 14916, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'head_ref_name': 'vertex_manager_draw_refactor', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T21:33:59.840295 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'sepalani', 'action': 'converted_to_draft', 'id': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'head_ref_name': 'kbd-hid', 'safe_author': True, 'base_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'head_sha': 'b88891fb3534760504517dc0c062a138ef5065ac', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T21:31:59.432612 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14101, 'title': 'DiscIO: Make conversion functions write to a temporary file then rename to the destination.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14101', 'head_ref_name': 'disc-conversion-atomic-write', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '2d3dd15fd95a66bb02c65779c55d64e6de286ad3', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T21:31:02.998447 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'SuperSamus', 'action': 'synchronize', 'id': 14939, 'title': 'PPCAnalyst: Avoid using strncmp', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14939', 'head_ref_name': 'ppc-analyst-no-strncmp', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '786d91da28c31c6431a9f079971acb25eb23c925', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T21:09:26.090279 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'synchronize', 'id': 13591, 'title': 'Update licenses.md', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/13591', 'head_ref_name': 'licenses', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'ec11c71d24a42ce51152792289fc42f4f9bd34cb', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T21:00:10.038972 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14949, 'title': 'UnitTests: Use `gtest_discover_tests` in CMakeLists to make CTest aware of individual tests.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14949', 'head_ref_name': 'gtests', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '9e5269fa97ecdeae59c3beecc98b4ee6d161933e', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T20:50:56.644446 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14930, 'title': 'IOS/DolphinDevice: Enable some requests with WantsDeterminism rather than disabling them all.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14930', 'head_ref_name': 'dev-dolphin-determinism', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': 'e3063ce496e9e65f3a9f40628f72e0e6e403937c', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T20:13:19.251501 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'opened', 'id': 14949, 'title': 'UnitTests: Use `gtest_discover_tests` in CMakeLists to make CTest aware of individual tests.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14949', 'head_ref_name': 'gtests', 'safe_author': True, 'base_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'head_sha': '1ac17502abf26e784460db0debd5896273b64af9', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T20:04:28.194501 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'closed', 'id': 14940, 'title': 'UnitTests: Fix CoreTiming.SharedSlot test so it can run independently.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14940', 'head_ref_name': 'CoreTimingTest-fix', 'safe_author': True, 'base_sha': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'head_sha': '3c72f4d5425875e32d809dab9821afe9bb1d042e', 'merged': True, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T19:55:14.254240 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14933, 'title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933', 'head_ref_name': 'hookable-event-better', 'safe_author': True, 'base_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'head_sha': 'be2c120316b72eceb0fb050c136f19246cfca5e4', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T19:33:47.414870 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'synchronize', 'id': 14948, 'title': 'CMake: Only trim flags on MSVC, be a little more selective of what to remove', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14948', 'head_ref_name': 'w-flags-fix', 'safe_author': True, 'base_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'head_sha': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T18:56:26.197217 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'synchronize', 'id': 14101, 'title': 'DiscIO: Make conversion functions write to a temporary file then rename to the destination.', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14101', 'head_ref_name': 'disc-conversion-atomic-write', 'safe_author': True, 'base_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'head_sha': 'a87a7674374a4f4641f939242fa50dee5296e6a2', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T18:29:05.519655 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'sepalani', 'action': 'synchronize', 'id': 14322, 'title': 'IOS/USB: Add "Connect USB Keyboard" support for HID', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14322', 'head_ref_name': 'kbd-hid', 'safe_author': True, 'base_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'head_sha': 'b88891fb3534760504517dc0c062a138ef5065ac', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T18:22:27.275723 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'closed', 'id': 14946, 'title': 'Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946', 'head_ref_name': 'revert-win-std-chrono', 'safe_author': True, 'base_sha': 'e1d35f666cc35f6ead55d32ea2679df44d04da72', 'head_sha': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'merged': True, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T17:12:54.541197 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'FriendlyDarkness', 'action': 'closed', 'id': 14864, 'title': 'Fix building with Xcode 27 by bumping minimum macOS version to 12 Monterey', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14864', 'head_ref_name': 'macos-12', 'safe_author': False, 'base_sha': '465c652da1dc0b3048089701a1885084821c9574', 'head_sha': '3a4fc36ced560122e9db41b6c28fdfcf8e832954', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T17:02:40.693946 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'edited', 'id': 14943, 'title': 'VertexLoaderARM64: Optimize RGB565 and RGBA6666', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943', 'head_ref_name': 'vertex-arm64', 'safe_author': True, 'base_sha': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'head_sha': 'f22dd8677ff402e8e79a796a9355e6c5955fe1fd', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T17:02:13.987838 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'synchronize', 'id': 14943, 'title': 'VertexLoaderARM64: Optimize RGB565 and RGBA6666', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943', 'head_ref_name': 'vertex-arm64', 'safe_author': True, 'base_sha': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'head_sha': 'f22dd8677ff402e8e79a796a9355e6c5955fe1fd', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
2026-10-24T16:03:10.372374 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'opened', 'id': 14948, 'title': 'CMake: Only trim flags on MSVC, be a little more selective of what to remove', 'base_ref_name': 'master', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14948', 'head_ref_name': 'w-flags-fix', 'safe_author': True, 'base_sha': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'head_sha': '201548e624c66f0b4c7387850fb725ef3f1c8158', 'merged': False, 'requested_reviewers': [], 'type': 'gh_pull_request'}
Recent 'gh_pull_request_comment' events
2026-10-25T06:56:00.505347 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14814, 'hash': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14814#discussion_r4369958773', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-25T06:48:31.315852 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14948, 'hash': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14948#discussion_r4369940585', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-25T03:13:40.528289 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'TellowKrinkle', 'action': 'created', 'id': 14916, 'hash': '62fc846755d4692168a26a707c7784e6198f641a', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4369488423', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T23:15:58.977889 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'created', 'id': 14916, 'hash': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368896741', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T21:45:02.981260 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'edited', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T21:44:49.062848 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T20:59:58.611882 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'edited', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T20:52:54.225898 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'edited', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T20:34:48.952423 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'created', 'id': 14930, 'hash': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368396907', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T20:34:48.757114 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'created', 'id': 14930, 'hash': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368428931', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T20:32:32.264537 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'edited', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T20:15:12.808103 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'created', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T20:01:39.700784 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'TellowKrinkle', 'action': 'created', 'id': 14916, 'hash': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368342867', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T19:55:56.396442 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14933, 'hash': '0131aeac20cce68676a52d25d07b5e2bede40261', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368324745', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T19:29:08.013308 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14933, 'hash': '0131aeac20cce68676a52d25d07b5e2bede40261', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368234452', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T19:10:55.910430 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'created', 'id': 14933, 'hash': '0131aeac20cce68676a52d25d07b5e2bede40261', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368168505', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T19:10:55.733308 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'created', 'id': 14933, 'hash': '0131aeac20cce68676a52d25d07b5e2bede40261', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368150177', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T19:10:55.532051 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'created', 'id': 14933, 'hash': '0131aeac20cce68676a52d25d07b5e2bede40261', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368165883', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T18:21:42.188474 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'created', 'id': 14943, 'hash': 'f22dd8677ff402e8e79a796a9355e6c5955fe1fd', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4368046696', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T18:21:03.254981 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Dentomologist', 'action': 'created', 'id': 14946, 'hash': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4368044822', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T17:37:19.770859 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'created', 'id': 14946, 'hash': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4367919863', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T17:02:54.798833 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'created', 'id': 14943, 'hash': 'f2cb6c886e4ffc920d450cd78f21a0794cd28763', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4367826840', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T10:58:02.880621 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14943, 'hash': 'f2cb6c886e4ffc920d450cd78f21a0794cd28763', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4366915201', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
2026-10-24T10:57:22.460254 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'edited', 'id': 14943, 'hash': 'f2cb6c886e4ffc920d450cd78f21a0794cd28763', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4366901375', 'is_part_of_review': False, 'type': 'gh_pull_request_comment'}
2026-10-24T10:52:16.469860 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'created', 'id': 14943, 'hash': 'f2cb6c886e4ffc920d450cd78f21a0794cd28763', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4366901375', 'is_part_of_review': True, 'type': 'gh_pull_request_comment'}
Recent 'gh_pull_request_review' events
2026-10-25T06:56:00.502483 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14814, 'pr_title': 'GameSettings + RA Whitelist: Add 60fps and 16:9 Aspect Ratio codes for Star Fox Assault', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14814#pullrequestreview-5641947242', 'comments': [{'id': 4369958773, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHhHdQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773', 'pull_request_review_id': 5641947242, 'diff_hunk': '@@ -91,5 +91,32 @@ C218068C 00000003\n C2220000 EC5100B2\n D0440000 00000000\n \n+[Gecko]\n+$16:9 Aspect Ratio\n+C2018400 00000002\n+1C000004 7C031670\n+60000000 00000000\n+C2018410 00000002\n+1C000004 7C031670\n+60000000 00000000\n+C21804A8 00000002\n+C3A2BCE0 EC441024\n+EC420772 00000000\n+$60 FPS\n+00385AF7 0000003C\n+C2071124 00000005\n+9421FFF0 BF810008\n+3FE08000 3FC04000\n+93DF1550 C01F1550\n+BB810008 38210010\n+60000000 00000000\n+C2073EE8 00000002\n+3D808000 C00C1550\n+60000000 00000000\n+\n [AR_RetroAchievements_Verified]\n $16:9 Widescreen [gamemasterplc]\n+\n+[Gecko_RetroAchievements_Verified]\n+$16:9 Aspect Ratio\n+$60 FPS', 'path': 'Data/Sys/GameSettings/GF7E01.ini', 'position': 32, 'original_position': 32, 'commit_id': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Please have a newline character at the end of this file.\nAlso, this PR needs a rebase.', 'created_at': '2026-10-25T06:55:57Z', 'updated_at': '2026-10-25T06:55:57Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14814#discussion_r4369958773', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14814#discussion_r4369958773'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814'}}, 'original_commit_id': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-25T06:48:31.249686 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14948, 'pr_title': 'CMake: Only trim flags on MSVC, be a little more selective of what to remove', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14948#pullrequestreview-5641908837', 'comments': [{'id': 4369940585, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHgAaQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585', 'pull_request_review_id': 5641908837, 'diff_hunk': '@@ -1,17 +1,19 @@\n function(dolphin_disable_warnings target)\n- get_target_property(target_flags ${target} COMPILE_OPTIONS)\n- set(new_flags)\n- foreach(flag IN LISTS target_flags)\n- # all warning flags start with "/W" or "/w" or "-W" or "-w"\n- if (NOT flag MATCHES "^[-/][Ww]")\n- list(APPEND new_flags "${flag}")\n+ if(MSVC)\n+ # MSVC warns with D9025 if multiple contradicting warning flags co-exist\n+ get_target_property(target_flags ${target} COMPILE_OPTIONS)\n+ if(target_flags)\n+ set(new_flags)\n+ foreach(flag IN LISTS target_flags)\n+ # This should match /external:W0, /Wall, $<IF:$<CONFIG:Debug>,/W0,/W4>, but not $<IF:$<CONFIG:Debug>,/I:C:/Users/will,/I:C:/Workspace2>', 'path': 'CMake/DolphinDisableWarnings.cmake', 'position': 14, 'original_position': 14, 'commit_id': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I think this logic would break if one of these `$<IF` clauses included both warning flags and non-warning flags? e.g. `<IF:$<CONFIG:Debug>,/W0,/I:C:/necessary-thing>`\nBut maybe that doesn't happen so much?", 'created_at': '2026-10-25T06:48:28Z', 'updated_at': '2026-10-25T06:48:28Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14948#discussion_r4369940585', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14948#discussion_r4369940585'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948'}}, 'original_commit_id': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-25T03:13:39.964840 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'TellowKrinkle', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5641309571', 'comments': [{'id': 4369488423, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHEaJw', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423', 'pull_request_review_id': 5641309571, 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'position': 104, 'original_position': 156, 'commit_id': '62fc846755d4692168a26a707c7784e6198f641a', 'user': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "This change by itself is fine, but note that the Metal renderer currently assumes that allocating on the vertex buffer can invalidate all previous allocations, so if you're doing anything that doesn't work with that, you're going to need to make changes.", 'created_at': '2026-10-25T03:13:37Z', 'updated_at': '2026-10-25T03:13:38Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4369488423', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4369488423'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4180887289, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T23:15:58.797578 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640548430', 'comments': [{'id': 4368896741, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGgS5Q', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741', 'pull_request_review_id': 5640548430, 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'position': 104, 'original_position': 156, 'commit_id': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I split out the binding per backend, it turns out with a separate change I will need the ability to bind the draw independently.\r\n\r\nMetal is Metal. Tellow or someone with the ability to test/compile mac stuff will likely have to make changes to support my feature if/when it lands as the current change won't work for it.", 'created_at': '2026-10-24T23:15:56Z', 'updated_at': '2026-10-24T23:15:57Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368896741', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368896741'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4180887289, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T21:44:56.155401 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640145686', 'comments': [{'id': 4368624146, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGPqEg', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146', 'pull_request_review_id': 5640145686, 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'position': 104, 'original_position': 156, 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I still feel like the exposed parameter is weird but I really don't know enough about the graphics code to understand the implications of having VertexManager internally store the stride value. Does @TellowKrinkle think it's fine? :P", 'created_at': '2026-10-24T21:44:46Z', 'updated_at': '2026-10-24T21:44:47Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4180887289, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T21:40:00.576429 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14941, 'pr_title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14941#pullrequestreview-5640130890', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T21:15:03.675364 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14704, 'pr_title': 'MathUtil: C++20/23 modernisations', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14704#pullrequestreview-5640059649', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T20:51:35.965377 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14930, 'pr_title': 'IOS/DolphinDevice: Enable some requests with WantsDeterminism rather than disabling them all.', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14930#pullrequestreview-5639967275', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T20:44:58.498180 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14949, 'pr_title': 'UnitTests: Use `gtest_discover_tests` in CMakeLists to make CTest aware of individual tests.', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14949#pullrequestreview-5639928291', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T20:34:50.665033 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14930, 'pr_title': 'IOS/DolphinDevice: Enable some requests with WantsDeterminism rather than disabling them all.', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14930#pullrequestreview-5639805550', 'comments': [{'id': 4368396907, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGByaw', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368396907', 'pull_request_review_id': 5639805550, 'diff_hunk': '@@ -38,6 +38,19 @@ enum\n \n };\n \n+bool IsDeterministicRequest(int request)\n+{\n+ switch (request)\n+ {\n+ case IOCTL_DOLPHIN_GET_VERSION:\n+ case IOCTL_DOLPHIN_SET_SPEED_LIMIT:', 'path': 'Source/Core/Core/IOS/DolphinDevice.cpp', 'position': 9, 'original_position': 9, 'commit_id': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "`NetPlayClient.cpp` sets the emulation speed to 1/0 on pad polls, so this most likely will get instantly overwritten. I don't think this is really an issue for determinism, but it's maybe worth a comment?", 'created_at': '2026-10-24T20:21:17Z', 'updated_at': '2026-10-24T20:34:46Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368396907', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14930', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368396907'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368396907'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14930'}}, 'original_commit_id': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368396907/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}, {'id': 4368428931, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGDvgw', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368428931', 'pull_request_review_id': 5639805550, 'diff_hunk': '@@ -38,6 +38,19 @@ enum\n \n };\n \n+bool IsDeterministicRequest(int request)\n+{\n+ switch (request)\n+ {\n+ case IOCTL_DOLPHIN_GET_VERSION:\n+ case IOCTL_DOLPHIN_SET_SPEED_LIMIT:', 'path': 'Source/Core/Core/IOS/DolphinDevice.cpp', 'position': 9, 'original_position': 9, 'commit_id': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'I think `IOCTL_DOLPHIN_GET_CPU_SPEED` is also a safe add to this list', 'created_at': '2026-10-24T20:33:40Z', 'updated_at': '2026-10-24T20:34:46Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368428931', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14930', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368428931'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14930#discussion_r4368428931'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14930'}}, 'original_commit_id': 'f8f56af138002dab72c799f8f4a559fbc62c98f1', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368428931/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T20:15:13.475399 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5639788478', 'comments': [{'id': 4368381953, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGA4AQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368381953', 'pull_request_review_id': 5639788478, 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'position': 104, 'original_position': 156, 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Because I didn't really want to put things that are draw specific on the pipeline? If we're doing that on Metal/OGL that's technically wrong and may eventually bite us (I don't do a lot of testing on those backends). Right now the API of the underlying backends have stride for some backends. That's driven by the backends themselves, not our abstraction.", 'created_at': '2026-10-24T20:15:10Z', 'updated_at': '2026-10-24T20:15:11Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368381953'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368381953'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368381953/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4180887289, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T20:02:24.668581 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14940, 'pr_title': 'UnitTests: Fix CoreTiming.SharedSlot test so it can run independently.', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14940#pullrequestreview-5639746064', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T20:01:39.658326 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'TellowKrinkle', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5639742982', 'comments': [{'id': 4368342867, 'node_id': 'PRRC_kwDOALCn2M8AAAABBF-fUw', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368342867', 'pull_request_review_id': 5639742982, 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'position': 104, 'original_position': 156, 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Why not change the D3D backends to store stride on the pipeline object, similar to how Metal and OpenGL store some pipeline parameters in the pipeline object and bind them before drawing, even though they aren't part of the API's idea of a pipeline?", 'created_at': '2026-10-24T20:01:37Z', 'updated_at': '2026-10-24T20:01:37Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368342867', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368342867'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368342867'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368342867/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4180887289, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T19:55:56.148290 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14933, 'pr_title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#pullrequestreview-5639719222', 'comments': [{'id': 4368324745, 'node_id': 'PRRC_kwDOALCn2M8AAAABBF9YiQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368324745', 'pull_request_review_id': 5639719222, 'diff_hunk': '@@ -43,102 +59,270 @@ using EventHook = std::unique_ptr<HookBase>;\n // my_lovely_event.Trigger("Hello world", 42);\n //\n \n-template <typename... CallbackArgs>\n-class HookableEvent\n+// A container of EventHook objects.\n+// If any held EventHook become disconnected the internal container is appropriately adjusted.\n+//\n+// HookableEvent<> event;\n+// HookHolder holder;\n+//\n+// holder.Connect(event, [&] { fmt::print("triggered 1"); });\n+//\n+// WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\n+// holder.Disconnect(hook);\n+//\n+class HookHolder\n {\n-public:\n- using CallbackType = std::function<void(CallbackArgs...)>;\n+ template <typename... CallbackArgs>\n+ friend class HookableEvent;\n \n- // Returns a handle that will unregister the listener when destroyed.\n- [[nodiscard]] EventHook Register(CallbackType callback)\n+public:\n+ // Registers an EventHook that is stored internally.\n+ // Returns a WeakEventHook that can disconnect or extend the life of the hook.\n+ template <typename... CallbackArgs>\n+ WeakEventHook Connect(HookableEvent<CallbackArgs...>& event,\n+ HookableEvent<CallbackArgs...>::CallbackType callback)\n {\n- DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n- std::lock_guard lg(m_storage->listeners_mutex);\n+ std::lock_guard lk{m_mutex};', 'path': 'Source/Core/Common/HookableEvent.h', 'position': 1, 'original_position': 87, 'commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Good catch. I've adjusted it to use consistent lock order.", 'created_at': '2026-10-24T19:55:53Z', 'updated_at': '2026-10-24T19:55:54Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368324745', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368324745'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368324745'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}}, 'original_commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368324745/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4368165883, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T19:43:26.575591 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JoshuaVandaele', 'action': 'submitted', 'pr_id': 14916, 'pr_title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5639679409', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T19:39:43.228286 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'submitted', 'pr_id': 14928, 'pr_title': 'VideoCommon: Add TextureDecoder_ARM64.cpp', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14928#pullrequestreview-5639665989', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T19:29:08.012382 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14933, 'pr_title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#pullrequestreview-5639614001', 'comments': [{'id': 4368234452, 'node_id': 'PRRC_kwDOALCn2M8AAAABBF331A', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368234452', 'pull_request_review_id': 5639614001, 'diff_hunk': '@@ -43,102 +59,270 @@ using EventHook = std::unique_ptr<HookBase>;\n // my_lovely_event.Trigger("Hello world", 42);\n //\n \n-template <typename... CallbackArgs>\n-class HookableEvent\n+// A container of EventHook objects.\n+// If any held EventHook become disconnected the internal container is appropriately adjusted.\n+//\n+// HookableEvent<> event;\n+// HookHolder holder;\n+//\n+// holder.Connect(event, [&] { fmt::print("triggered 1"); });\n+//\n+// WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\n+// holder.Disconnect(hook);\n+//\n+class HookHolder\n {\n-public:\n- using CallbackType = std::function<void(CallbackArgs...)>;\n+ template <typename... CallbackArgs>\n+ friend class HookableEvent;\n \n- // Returns a handle that will unregister the listener when destroyed.\n- [[nodiscard]] EventHook Register(CallbackType callback)\n+public:\n+ // Registers an EventHook that is stored internally.\n+ // Returns a WeakEventHook that can disconnect or extend the life of the hook.\n+ template <typename... CallbackArgs>\n+ WeakEventHook Connect(HookableEvent<CallbackArgs...>& event,\n+ HookableEvent<CallbackArgs...>::CallbackType callback)\n {\n- DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n- std::lock_guard lg(m_storage->listeners_mutex);\n+ std::lock_guard lk{m_mutex};\n+\n+ const auto it = m_hooks.emplace(m_hooks.end());\n+ return *it = event.AddHook(std::move(callback), this, it);\n+ }\n \n- auto& new_listener =\n- m_storage->listeners.emplace_back(std::make_unique<Listener>(std::move(callback)));\n+ // These are just convenience functions to invoke EventHook::Disconnect()\n+ void Disconnect(EventHook& conn) { conn->Disconnect(); }\n+ void Disconnect(WeakEventHook& conn)\n+ {\n+ if (auto c = conn.lock())\n+ Disconnect(c);\n+ }\n \n- return std::make_unique<HookImpl>(m_storage, new_listener.get());\n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{m_mutex};\n+ return m_hooks.size();\n }\n \n- // Invokes all registered callbacks.\n- // Hooks added from within a callback will be invoked.\n- // Hooks removed from within a callback will be skipped,\n- // but destruction of the hook\'s callback will be delayed until Trigger() completes.\n- void Trigger(const CallbackArgs&... args)\n+ // Disconnect all held connections regardless of externally held EventHook.\n+ void DisconnectAll()\n {\n- std::lock_guard lg(m_storage->listeners_mutex);\n- m_storage->is_triggering = true;\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n+ {\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->Disconnect();\n+ }\n+ }\n \n- // Avoiding an actual iterator because the container may be modified.\n- for (std::size_t i = 0; i != m_storage->listeners.size(); ++i)\n+ // Destruction only removes internal references.\n+ // Any externally held EventHook can keep a connection alive.\n+ ~HookHolder()\n+ {\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n {\n- auto& listener = m_storage->listeners[i];\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->ForgetHolder();\n+ }\n+ }\n \n- if (listener->is_pending_removal)\n- continue;\n+private:\n+ mutable std::mutex m_mutex;\n+\n+ using ConnectedHooks = std::list<EventHook>;\n+ ConnectedHooks m_hooks;\n \n- std::invoke(listener->callback, args...);\n+ void EraseHook(ConnectedHooks::iterator it)\n+ {\n+ const EventHook hook = std::move(*it);\n+ std::lock_guard lk{m_mutex};\n+ m_hooks.erase(it);\n+ }\n+};\n+\n+template <typename... CallbackArgs>\n+class HookableEvent\n+{\n+ friend HookHolder;\n+\n+public:\n+ HookableEvent() = default;\n+\n+ using CallbackType = Common::MoveOnlyFunction<void(CallbackArgs...)>;\n+\n+ [[nodiscard]] EventHook Register(HookableEvent::CallbackType callback)\n+ {\n+ return AddHook(std::move(callback));\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void Trigger(CallbackArgs... args)\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ // Destruction from Trigger might be feasible if all state is moved into a `shared_ptr`.\n+ TriggerState& trigger_state = m_trigger_states.emplace_front();\n+ trigger_state.next = m_hooks.begin();\n+ trigger_state.end = m_hooks.end();\n+\n+ while (trigger_state.next != trigger_state.end)\n+ {\n+ auto& callback = (trigger_state.next++)->callback;\n+ std::invoke(callback, args...);\n }\n \n- m_storage->is_triggering = false;\n- std::erase_if(m_storage->listeners, std::mem_fn(&Listener::is_pending_removal));\n+ m_trigger_states.pop_front();\n }\n \n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{*m_mutex};\n+ return m_hooks.size();\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void DisconnectAll()\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ while (!m_hooks.empty())\n+ m_hooks.back().hook->Disconnect();\n+ }\n+\n+ HookableEvent(HookableEvent&&) = delete;\n+ HookableEvent(const HookableEvent&) = delete;\n+ HookableEvent& operator=(HookableEvent&&) = delete;\n+ HookableEvent& operator=(const HookableEvent&) = delete;\n+\n+ ~HookableEvent() { DisconnectAll(); }\n+\n private:\n- struct Listener\n+ class Hook;\n+\n+ struct ConnectedHook\n {\n- const CallbackType callback;\n- bool is_pending_removal{};\n+ CallbackType callback;\n+ Hook* const hook;\n };\n \n- struct Storage\n+ using ConnectedHooks = std::list<ConnectedHook>;\n+ ConnectedHooks m_hooks;\n+\n+ // Member variable iterators so Add/Remove inside a Trigger call can adjust them.\n+ struct TriggerState\n {\n- std::recursive_mutex listeners_mutex;\n- std::vector<std::unique_ptr<Listener>> listeners;\n- bool is_triggering{};\n+ ConnectedHooks::iterator next;\n+ ConnectedHooks::iterator end;\n };\n \n- struct HookImpl final : HookBase\n+ // Multiple trigger states to handle recursive Trigger calls.\n+ std::forward_list<TriggerState> m_trigger_states;\n+\n+ // The mutex is shared with all connected hooks.\n+ std::shared_ptr<std::recursive_mutex> m_mutex{std::make_shared<std::recursive_mutex>()};\n+\n+ class Hook final : public HookBase\n {\n- HookImpl(std::weak_ptr<Storage> storage, Listener* listener)\n- : weak_storage{std::move(storage)}, listener_ptr{listener}\n+ friend HookableEvent;\n+\n+ public:\n+ void Disconnect() override\n {\n+ std::lock_guard lk{*m_mutex};\n+\n+ if (auto* holder = std::exchange(m_holder, nullptr))\n+ holder->EraseHook(m_holder_it);\n+\n+ // In the case of the callback itself holding the EventHook, this could be our demise.\n+ if (auto* event = std::exchange(m_event, nullptr))\n+ event->RemoveHook(m_event_it);\n }\n \n- ~HookImpl() override\n+ bool IsConnected() const override\n {\n- const auto storage = weak_storage.lock();\n- if (storage == nullptr)\n- {\n- DEBUG_LOG_FMT(COMMON, "Handler outlived event hook");\n- return;\n- }\n+ std::lock_guard lk{*m_mutex};\n+ return m_event != nullptr;\n+ }\n+\n+ ~Hook() override\n+ {\n+ std::lock_guard lk{*m_mutex};\n \n- DEBUG_LOG_FMT(COMMON, "Removing event hook handler");\n+ // Reaching the destructor is only possible if a potential Holder has already forgoten us.\n+ // We only need to inform the Event.\n+ if (auto* event = std::exchange(m_event, nullptr))\n+ event->RemoveHook(m_event_it);\n+ }\n \n- std::lock_guard lg(storage->listeners_mutex);\n+ private:\n+ void ForgetHolder() override\n+ {\n+ std::lock_guard lk{*m_mutex};\n \n- if (storage->is_triggering)\n- {\n- // Just mark our listener for removal.\n- // Trigger() will erase it for us.\n- listener_ptr->is_pending_removal = true;\n- }\n- else\n+ if (auto* holder = std::exchange(m_holder, nullptr))\n+ holder->EraseHook(m_holder_it);\n+ }\n+\n+ HookableEvent* m_event{};\n+ ConnectedHooks::iterator m_event_it;\n+\n+ HookHolder* m_holder{};\n+ HookHolder::ConnectedHooks::iterator m_holder_it;\n+\n+ // Shared with the event and all other connected hooks.\n+ std::shared_ptr<std::recursive_mutex> m_mutex;\n+ };\n+\n+ EventHook AddHook(CallbackType callback, HookHolder* holder = {},\n+ HookHolder::ConnectedHooks::iterator holder_it = {})\n+ {\n+ DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n+\n+ std::lock_guard lk{*m_mutex};\n+\n+ auto hook = std::make_shared<Hook>();\n+ auto it = m_hooks.emplace(m_hooks.end(), std::move(callback), hook.get());\n+\n+ hook->m_event = this;\n+ hook->m_event_it = it;\n+\n+ hook->m_holder = holder;\n+ hook->m_holder_it = holder_it;\n+\n+ hook->m_mutex = m_mutex;\n+\n+ // Trigger states about to reach .end() are adjusted to not include the new item.\n+ for (auto& trigger_state : m_trigger_states)\n+ {\n+ if (trigger_state.end == m_hooks.end())\n {\n- // Remove our listener.\n- storage->listeners.erase(std::ranges::find_if(\n- storage->listeners, [&](auto& ptr) { return ptr.get() == listener_ptr; }));\n+ if (trigger_state.next == trigger_state.end)\n+ trigger_state.next = it;\n+ trigger_state.end = it;\n }\n }\n \n- const std::weak_ptr<Storage> weak_storage;\n- Listener* const listener_ptr; // "owned" by the above Storage.\n- };\n+ return hook;\n+ }\n+\n+ void RemoveHook(ConnectedHooks::iterator it)\n+ {\n+ DEBUG_LOG_FMT(COMMON, "Removing event hook handler");\n \n- // shared_ptr storage allows hooks to forget their connection if they outlive the event itself.\n- std::shared_ptr<Storage> m_storage{std::make_shared<Storage>()};\n+ // Note: The mutex is already held from the only caller.\n+\n+ // Trigger states about to reach the removed item are adjusted to the very next item.\n+ const auto next = std::next(it);\n+ for (auto& trigger_state : m_trigger_states)\n+ {\n+ if (trigger_state.next == it)\n+ {\n+ if (trigger_state.end == it)\n+ trigger_state.end = next;', 'path': 'Source/Core/Common/HookableEvent.h', 'position': 374, 'original_position': 374, 'commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Thanks. I think I had this at one point and incorrectly decided the `end` check wasn't always needed. And my unit test wasn't checking for it properly. I'll fix it.", 'created_at': '2026-10-24T19:29:05Z', 'updated_at': '2026-10-24T19:29:05Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368234452', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368234452'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368234452'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}}, 'original_commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368234452/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4368150177, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T19:10:55.378930 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'iwubcode', 'action': 'submitted', 'pr_id': 14933, 'pr_title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14933#pullrequestreview-5639519047', 'comments': [{'id': 4368150177, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFyuoQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368150177', 'pull_request_review_id': 5639519047, 'diff_hunk': '@@ -43,102 +59,270 @@ using EventHook = std::unique_ptr<HookBase>;\n // my_lovely_event.Trigger("Hello world", 42);\n //\n \n-template <typename... CallbackArgs>\n-class HookableEvent\n+// A container of EventHook objects.\n+// If any held EventHook become disconnected the internal container is appropriately adjusted.\n+//\n+// HookableEvent<> event;\n+// HookHolder holder;\n+//\n+// holder.Connect(event, [&] { fmt::print("triggered 1"); });\n+//\n+// WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\n+// holder.Disconnect(hook);\n+//\n+class HookHolder\n {\n-public:\n- using CallbackType = std::function<void(CallbackArgs...)>;\n+ template <typename... CallbackArgs>\n+ friend class HookableEvent;\n \n- // Returns a handle that will unregister the listener when destroyed.\n- [[nodiscard]] EventHook Register(CallbackType callback)\n+public:\n+ // Registers an EventHook that is stored internally.\n+ // Returns a WeakEventHook that can disconnect or extend the life of the hook.\n+ template <typename... CallbackArgs>\n+ WeakEventHook Connect(HookableEvent<CallbackArgs...>& event,\n+ HookableEvent<CallbackArgs...>::CallbackType callback)\n {\n- DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n- std::lock_guard lg(m_storage->listeners_mutex);\n+ std::lock_guard lk{m_mutex};\n+\n+ const auto it = m_hooks.emplace(m_hooks.end());\n+ return *it = event.AddHook(std::move(callback), this, it);\n+ }\n \n- auto& new_listener =\n- m_storage->listeners.emplace_back(std::make_unique<Listener>(std::move(callback)));\n+ // These are just convenience functions to invoke EventHook::Disconnect()\n+ void Disconnect(EventHook& conn) { conn->Disconnect(); }\n+ void Disconnect(WeakEventHook& conn)\n+ {\n+ if (auto c = conn.lock())\n+ Disconnect(c);\n+ }\n \n- return std::make_unique<HookImpl>(m_storage, new_listener.get());\n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{m_mutex};\n+ return m_hooks.size();\n }\n \n- // Invokes all registered callbacks.\n- // Hooks added from within a callback will be invoked.\n- // Hooks removed from within a callback will be skipped,\n- // but destruction of the hook\'s callback will be delayed until Trigger() completes.\n- void Trigger(const CallbackArgs&... args)\n+ // Disconnect all held connections regardless of externally held EventHook.\n+ void DisconnectAll()\n {\n- std::lock_guard lg(m_storage->listeners_mutex);\n- m_storage->is_triggering = true;\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n+ {\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->Disconnect();\n+ }\n+ }\n \n- // Avoiding an actual iterator because the container may be modified.\n- for (std::size_t i = 0; i != m_storage->listeners.size(); ++i)\n+ // Destruction only removes internal references.\n+ // Any externally held EventHook can keep a connection alive.\n+ ~HookHolder()\n+ {\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n {\n- auto& listener = m_storage->listeners[i];\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->ForgetHolder();\n+ }\n+ }\n \n- if (listener->is_pending_removal)\n- continue;\n+private:\n+ mutable std::mutex m_mutex;\n+\n+ using ConnectedHooks = std::list<EventHook>;\n+ ConnectedHooks m_hooks;\n \n- std::invoke(listener->callback, args...);\n+ void EraseHook(ConnectedHooks::iterator it)\n+ {\n+ const EventHook hook = std::move(*it);\n+ std::lock_guard lk{m_mutex};\n+ m_hooks.erase(it);\n+ }\n+};\n+\n+template <typename... CallbackArgs>\n+class HookableEvent\n+{\n+ friend HookHolder;\n+\n+public:\n+ HookableEvent() = default;\n+\n+ using CallbackType = Common::MoveOnlyFunction<void(CallbackArgs...)>;\n+\n+ [[nodiscard]] EventHook Register(HookableEvent::CallbackType callback)\n+ {\n+ return AddHook(std::move(callback));\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void Trigger(CallbackArgs... args)\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ // Destruction from Trigger might be feasible if all state is moved into a `shared_ptr`.\n+ TriggerState& trigger_state = m_trigger_states.emplace_front();\n+ trigger_state.next = m_hooks.begin();\n+ trigger_state.end = m_hooks.end();\n+\n+ while (trigger_state.next != trigger_state.end)\n+ {\n+ auto& callback = (trigger_state.next++)->callback;\n+ std::invoke(callback, args...);\n }\n \n- m_storage->is_triggering = false;\n- std::erase_if(m_storage->listeners, std::mem_fn(&Listener::is_pending_removal));\n+ m_trigger_states.pop_front();\n }\n \n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{*m_mutex};\n+ return m_hooks.size();\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void DisconnectAll()\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ while (!m_hooks.empty())\n+ m_hooks.back().hook->Disconnect();\n+ }\n+\n+ HookableEvent(HookableEvent&&) = delete;\n+ HookableEvent(const HookableEvent&) = delete;\n+ HookableEvent& operator=(HookableEvent&&) = delete;\n+ HookableEvent& operator=(const HookableEvent&) = delete;\n+\n+ ~HookableEvent() { DisconnectAll(); }\n+\n private:\n- struct Listener\n+ class Hook;\n+\n+ struct ConnectedHook\n {\n- const CallbackType callback;\n- bool is_pending_removal{};\n+ CallbackType callback;\n+ Hook* const hook;\n };\n \n- struct Storage\n+ using ConnectedHooks = std::list<ConnectedHook>;\n+ ConnectedHooks m_hooks;\n+\n+ // Member variable iterators so Add/Remove inside a Trigger call can adjust them.\n+ struct TriggerState\n {\n- std::recursive_mutex listeners_mutex;\n- std::vector<std::unique_ptr<Listener>> listeners;\n- bool is_triggering{};\n+ ConnectedHooks::iterator next;\n+ ConnectedHooks::iterator end;\n };\n \n- struct HookImpl final : HookBase\n+ // Multiple trigger states to handle recursive Trigger calls.\n+ std::forward_list<TriggerState> m_trigger_states;\n+\n+ // The mutex is shared with all connected hooks.\n+ std::shared_ptr<std::recursive_mutex> m_mutex{std::make_shared<std::recursive_mutex>()};\n+\n+ class Hook final : public HookBase\n {\n- HookImpl(std::weak_ptr<Storage> storage, Listener* listener)\n- : weak_storage{std::move(storage)}, listener_ptr{listener}\n+ friend HookableEvent;\n+\n+ public:\n+ void Disconnect() override\n {\n+ std::lock_guard lk{*m_mutex};\n+\n+ if (auto* holder = std::exchange(m_holder, nullptr))\n+ holder->EraseHook(m_holder_it);\n+\n+ // In the case of the callback itself holding the EventHook, this could be our demise.\n+ if (auto* event = std::exchange(m_event, nullptr))\n+ event->RemoveHook(m_event_it);\n }\n \n- ~HookImpl() override\n+ bool IsConnected() const override\n {\n- const auto storage = weak_storage.lock();\n- if (storage == nullptr)\n- {\n- DEBUG_LOG_FMT(COMMON, "Handler outlived event hook");\n- return;\n- }\n+ std::lock_guard lk{*m_mutex};\n+ return m_event != nullptr;\n+ }\n+\n+ ~Hook() override\n+ {\n+ std::lock_guard lk{*m_mutex};\n \n- DEBUG_LOG_FMT(COMMON, "Removing event hook handler");\n+ // Reaching the destructor is only possible if a potential Holder has already forgoten us.\n+ // We only need to inform the Event.\n+ if (auto* event = std::exchange(m_event, nullptr))\n+ event->RemoveHook(m_event_it);\n+ }\n \n- std::lock_guard lg(storage->listeners_mutex);\n+ private:\n+ void ForgetHolder() override\n+ {\n+ std::lock_guard lk{*m_mutex};\n \n- if (storage->is_triggering)\n- {\n- // Just mark our listener for removal.\n- // Trigger() will erase it for us.\n- listener_ptr->is_pending_removal = true;\n- }\n- else\n+ if (auto* holder = std::exchange(m_holder, nullptr))\n+ holder->EraseHook(m_holder_it);\n+ }\n+\n+ HookableEvent* m_event{};\n+ ConnectedHooks::iterator m_event_it;\n+\n+ HookHolder* m_holder{};\n+ HookHolder::ConnectedHooks::iterator m_holder_it;\n+\n+ // Shared with the event and all other connected hooks.\n+ std::shared_ptr<std::recursive_mutex> m_mutex;\n+ };\n+\n+ EventHook AddHook(CallbackType callback, HookHolder* holder = {},\n+ HookHolder::ConnectedHooks::iterator holder_it = {})\n+ {\n+ DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n+\n+ std::lock_guard lk{*m_mutex};\n+\n+ auto hook = std::make_shared<Hook>();\n+ auto it = m_hooks.emplace(m_hooks.end(), std::move(callback), hook.get());\n+\n+ hook->m_event = this;\n+ hook->m_event_it = it;\n+\n+ hook->m_holder = holder;\n+ hook->m_holder_it = holder_it;\n+\n+ hook->m_mutex = m_mutex;\n+\n+ // Trigger states about to reach .end() are adjusted to not include the new item.\n+ for (auto& trigger_state : m_trigger_states)\n+ {\n+ if (trigger_state.end == m_hooks.end())\n {\n- // Remove our listener.\n- storage->listeners.erase(std::ranges::find_if(\n- storage->listeners, [&](auto& ptr) { return ptr.get() == listener_ptr; }));\n+ if (trigger_state.next == trigger_state.end)\n+ trigger_state.next = it;\n+ trigger_state.end = it;\n }\n }\n \n- const std::weak_ptr<Storage> weak_storage;\n- Listener* const listener_ptr; // "owned" by the above Storage.\n- };\n+ return hook;\n+ }\n+\n+ void RemoveHook(ConnectedHooks::iterator it)\n+ {\n+ DEBUG_LOG_FMT(COMMON, "Removing event hook handler");\n \n- // shared_ptr storage allows hooks to forget their connection if they outlive the event itself.\n- std::shared_ptr<Storage> m_storage{std::make_shared<Storage>()};\n+ // Note: The mutex is already held from the only caller.\n+\n+ // Trigger states about to reach the removed item are adjusted to the very next item.\n+ const auto next = std::next(it);\n+ for (auto& trigger_state : m_trigger_states)\n+ {\n+ if (trigger_state.next == it)\n+ {\n+ if (trigger_state.end == it)\n+ trigger_state.end = next;', 'path': 'Source/Core/Common/HookableEvent.h', 'position': 374, 'original_position': 374, 'commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Is the way this is laid out problematic when a trigger for a callback adds a hook and another triggered callback removes a hook in the same trigger? ( `AddHook()` sets end )\n\nMaybe better to do:\n\n```\nif (trigger_state.end == it)\n trigger_state.end = next;\nif (trigger_state.next == it)\n trigger_state.next = next;\n```\n\n?\n\nThis seems unlikely that we'd create events within callbacks but the interface does support it...", 'created_at': '2026-10-24T18:59:01Z', 'updated_at': '2026-10-24T19:10:53Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368150177', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368150177'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368150177'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}}, 'original_commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368150177/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}, {'id': 4368165883, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFzr-w', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368165883', 'pull_request_review_id': 5639519047, 'diff_hunk': '@@ -43,102 +59,270 @@ using EventHook = std::unique_ptr<HookBase>;\n // my_lovely_event.Trigger("Hello world", 42);\n //\n \n-template <typename... CallbackArgs>\n-class HookableEvent\n+// A container of EventHook objects.\n+// If any held EventHook become disconnected the internal container is appropriately adjusted.\n+//\n+// HookableEvent<> event;\n+// HookHolder holder;\n+//\n+// holder.Connect(event, [&] { fmt::print("triggered 1"); });\n+//\n+// WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\n+// holder.Disconnect(hook);\n+//\n+class HookHolder\n {\n-public:\n- using CallbackType = std::function<void(CallbackArgs...)>;\n+ template <typename... CallbackArgs>\n+ friend class HookableEvent;\n \n- // Returns a handle that will unregister the listener when destroyed.\n- [[nodiscard]] EventHook Register(CallbackType callback)\n+public:\n+ // Registers an EventHook that is stored internally.\n+ // Returns a WeakEventHook that can disconnect or extend the life of the hook.\n+ template <typename... CallbackArgs>\n+ WeakEventHook Connect(HookableEvent<CallbackArgs...>& event,\n+ HookableEvent<CallbackArgs...>::CallbackType callback)\n {\n- DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n- std::lock_guard lg(m_storage->listeners_mutex);\n+ std::lock_guard lk{m_mutex};', 'path': 'Source/Core/Common/HookableEvent.h', 'position': 87, 'original_position': 87, 'commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "It seems like we have a potential for a deadlock. The holder locks the mutex here and `event.AddHook()` locks its own mutex. However, it seems plausible that another thread could call `ForgetHolder()` on an event, which first locks the event and then locks the holder.\n\nIs there something I'm missing that prevents this?", 'created_at': '2026-10-24T19:03:49Z', 'updated_at': '2026-10-24T19:10:53Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368165883', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368165883'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368165883'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}}, 'original_commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368165883/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}, {'id': 4368168505, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFz2OQ', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368168505', 'pull_request_review_id': 5639519047, 'diff_hunk': '@@ -43,102 +59,270 @@ using EventHook = std::unique_ptr<HookBase>;\n // my_lovely_event.Trigger("Hello world", 42);\n //\n \n-template <typename... CallbackArgs>\n-class HookableEvent\n+// A container of EventHook objects.\n+// If any held EventHook become disconnected the internal container is appropriately adjusted.\n+//\n+// HookableEvent<> event;\n+// HookHolder holder;\n+//\n+// holder.Connect(event, [&] { fmt::print("triggered 1"); });\n+//\n+// WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\n+// holder.Disconnect(hook);\n+//\n+class HookHolder\n {\n-public:\n- using CallbackType = std::function<void(CallbackArgs...)>;\n+ template <typename... CallbackArgs>\n+ friend class HookableEvent;\n \n- // Returns a handle that will unregister the listener when destroyed.\n- [[nodiscard]] EventHook Register(CallbackType callback)\n+public:\n+ // Registers an EventHook that is stored internally.\n+ // Returns a WeakEventHook that can disconnect or extend the life of the hook.\n+ template <typename... CallbackArgs>\n+ WeakEventHook Connect(HookableEvent<CallbackArgs...>& event,\n+ HookableEvent<CallbackArgs...>::CallbackType callback)\n {\n- DEBUG_LOG_FMT(COMMON, "Registering event hook handler");\n- std::lock_guard lg(m_storage->listeners_mutex);\n+ std::lock_guard lk{m_mutex};\n+\n+ const auto it = m_hooks.emplace(m_hooks.end());\n+ return *it = event.AddHook(std::move(callback), this, it);\n+ }\n \n- auto& new_listener =\n- m_storage->listeners.emplace_back(std::make_unique<Listener>(std::move(callback)));\n+ // These are just convenience functions to invoke EventHook::Disconnect()\n+ void Disconnect(EventHook& conn) { conn->Disconnect(); }\n+ void Disconnect(WeakEventHook& conn)\n+ {\n+ if (auto c = conn.lock())\n+ Disconnect(c);\n+ }\n \n- return std::make_unique<HookImpl>(m_storage, new_listener.get());\n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{m_mutex};\n+ return m_hooks.size();\n }\n \n- // Invokes all registered callbacks.\n- // Hooks added from within a callback will be invoked.\n- // Hooks removed from within a callback will be skipped,\n- // but destruction of the hook\'s callback will be delayed until Trigger() completes.\n- void Trigger(const CallbackArgs&... args)\n+ // Disconnect all held connections regardless of externally held EventHook.\n+ void DisconnectAll()\n {\n- std::lock_guard lg(m_storage->listeners_mutex);\n- m_storage->is_triggering = true;\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n+ {\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->Disconnect();\n+ }\n+ }\n \n- // Avoiding an actual iterator because the container may be modified.\n- for (std::size_t i = 0; i != m_storage->listeners.size(); ++i)\n+ // Destruction only removes internal references.\n+ // Any externally held EventHook can keep a connection alive.\n+ ~HookHolder()\n+ {\n+ for (std::unique_lock lk{m_mutex}; !m_hooks.empty(); lk.lock())\n {\n- auto& listener = m_storage->listeners[i];\n+ const EventHook hook = std::move(m_hooks.back());\n+ lk.unlock(); // Avoid deadlock from different lock orders.\n+ hook->ForgetHolder();\n+ }\n+ }\n \n- if (listener->is_pending_removal)\n- continue;\n+private:\n+ mutable std::mutex m_mutex;\n+\n+ using ConnectedHooks = std::list<EventHook>;\n+ ConnectedHooks m_hooks;\n \n- std::invoke(listener->callback, args...);\n+ void EraseHook(ConnectedHooks::iterator it)\n+ {\n+ const EventHook hook = std::move(*it);\n+ std::lock_guard lk{m_mutex};\n+ m_hooks.erase(it);\n+ }\n+};\n+\n+template <typename... CallbackArgs>\n+class HookableEvent\n+{\n+ friend HookHolder;\n+\n+public:\n+ HookableEvent() = default;\n+\n+ using CallbackType = Common::MoveOnlyFunction<void(CallbackArgs...)>;\n+\n+ [[nodiscard]] EventHook Register(HookableEvent::CallbackType callback)\n+ {\n+ return AddHook(std::move(callback));\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void Trigger(CallbackArgs... args)\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ // Destruction from Trigger might be feasible if all state is moved into a `shared_ptr`.\n+ TriggerState& trigger_state = m_trigger_states.emplace_front();\n+ trigger_state.next = m_hooks.begin();\n+ trigger_state.end = m_hooks.end();\n+\n+ while (trigger_state.next != trigger_state.end)\n+ {\n+ auto& callback = (trigger_state.next++)->callback;\n+ std::invoke(callback, args...);\n }\n \n- m_storage->is_triggering = false;\n- std::erase_if(m_storage->listeners, std::mem_fn(&Listener::is_pending_removal));\n+ m_trigger_states.pop_front();\n }\n \n+ std::size_t GetConnectionCount() const\n+ {\n+ std::lock_guard lk{*m_mutex};\n+ return m_hooks.size();\n+ }\n+\n+ // Currently *not* allowed to cause destruction of the HookableEvent itself.\n+ void DisconnectAll()\n+ {\n+ std::lock_guard lk{*m_mutex};\n+\n+ while (!m_hooks.empty())\n+ m_hooks.back().hook->Disconnect();\n+ }\n+\n+ HookableEvent(HookableEvent&&) = delete;\n+ HookableEvent(const HookableEvent&) = delete;\n+ HookableEvent& operator=(HookableEvent&&) = delete;\n+ HookableEvent& operator=(const HookableEvent&) = delete;\n+\n+ ~HookableEvent() { DisconnectAll(); }\n+\n private:\n- struct Listener\n+ class Hook;\n+\n+ struct ConnectedHook\n {\n- const CallbackType callback;\n- bool is_pending_removal{};\n+ CallbackType callback;\n+ Hook* const hook;\n };\n \n- struct Storage\n+ using ConnectedHooks = std::list<ConnectedHook>;\n+ ConnectedHooks m_hooks;\n+\n+ // Member variable iterators so Add/Remove inside a Trigger call can adjust them.\n+ struct TriggerState\n {\n- std::recursive_mutex listeners_mutex;\n- std::vector<std::unique_ptr<Listener>> listeners;\n- bool is_triggering{};\n+ ConnectedHooks::iterator next;\n+ ConnectedHooks::iterator end;\n };\n \n- struct HookImpl final : HookBase\n+ // Multiple trigger states to handle recursive Trigger calls.\n+ std::forward_list<TriggerState> m_trigger_states;\n+\n+ // The mutex is shared with all connected hooks.\n+ std::shared_ptr<std::recursive_mutex> m_mutex{std::make_shared<std::recursive_mutex>()};\n+\n+ class Hook final : public HookBase\n {\n- HookImpl(std::weak_ptr<Storage> storage, Listener* listener)\n- : weak_storage{std::move(storage)}, listener_ptr{listener}\n+ friend HookableEvent;\n+\n+ public:\n+ void Disconnect() override\n {\n+ std::lock_guard lk{*m_mutex};\n+\n+ if (auto* holder = std::exchange(m_holder, nullptr))\n+ holder->EraseHook(m_holder_it);\n+\n+ // In the case of the callback itself holding the EventHook, this could be our demise.\n+ if (auto* event = std::exchange(m_event, nullptr))\n+ event->RemoveHook(m_event_it);\n }\n \n- ~HookImpl() override\n+ bool IsConnected() const override\n {\n- const auto storage = weak_storage.lock();\n- if (storage == nullptr)\n- {\n- DEBUG_LOG_FMT(COMMON, "Handler outlived event hook");\n- return;\n- }\n+ std::lock_guard lk{*m_mutex};\n+ return m_event != nullptr;\n+ }\n+\n+ ~Hook() override\n+ {\n+ std::lock_guard lk{*m_mutex};\n \n- DEBUG_LOG_FMT(COMMON, "Removing event hook handler");\n+ // Reaching the destructor is only possible if a potential Holder has already forgoten us.', 'path': 'Source/Core/Common/HookableEvent.h', 'position': 288, 'original_position': 288, 'commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': '```suggestion\n // Reaching the destructor is only possible if a potential Holder has already forgotten us.\n```', 'created_at': '2026-10-24T19:04:48Z', 'updated_at': '2026-10-24T19:10:53Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368168505', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368168505'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933#discussion_r4368168505'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}}, 'original_commit_id': '0131aeac20cce68676a52d25d07b5e2bede40261', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368168505/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T18:27:08.074303 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'submitted', 'pr_id': 14943, 'pr_title': 'VertexLoaderARM64: Optimize RGB565 and RGBA6666', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#pullrequestreview-5639417222', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T18:21:42.186557 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'submitted', 'pr_id': 14943, 'pr_title': 'VertexLoaderARM64: Optimize RGB565 and RGBA6666', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#pullrequestreview-5639401111', 'comments': [{'id': 4368046696, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFsaaA', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368046696', 'pull_request_review_id': 5639401111, 'diff_hunk': '@@ -215,31 +215,47 @@ void VertexLoaderARM64::ReadColor(VertexComponentFormat attribute, ColorFormat f\n break;\n \n case ColorFormat::RGB565:\n- // RRRRRGGG GGGBBBBB\n- // AAAAAAAA BBBBBBBB GGGGGGGG RRRRRRRR\n+ // Load 16 bits and zero-extend.\n+ // 00000000 00000000 GGGBBBBB RRRRRGGG\n LDURH(scratch3_reg, reg, offset);\n \n- REV16(scratch3_reg, scratch3_reg);\n-\n- // B\n- AND(scratch2_reg, scratch3_reg, LogicalImm(0x1F, GPRSize::B32));\n- ORR(scratch2_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 3));\n- ORR(scratch2_reg, scratch2_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 5));\n- ORR(scratch1_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 16));\n-\n- // G\n- UBFM(scratch2_reg, scratch3_reg, 5, 10);\n- ORR(scratch2_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 2));\n- ORR(scratch2_reg, scratch2_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 6));\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 8));\n-\n- // R\n- UBFM(scratch2_reg, scratch3_reg, 11, 15);\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 3));\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 2));\n-\n- // A\n+ // Byteswap to make all green bits sequential.\n+ // 00000000 00000000 RRRRRGGG GGGBBBBB\n+ REV16(scratch2_reg, scratch3_reg);\n+\n+ // Isolate red bits. Red is already in the correct position.\n+ // 00000000 00000000 00000000 RRRRR000\n+ AND(scratch1_reg, scratch3_reg, LogicalImm(0xF8, GPRSize::B32));\n+ // Isolate blue bits.\n+ // 00000000 00000000 000BBBBB 00000000\n+ AND(scratch3_reg, scratch3_reg, LogicalImm(0x1F00, GPRSize::B32));\n+ // Shift blue bits into position and combine with red bits.\n+ // 00000000 BBBBB000 00000000 RRRRR000\n+ ORR(scratch1_reg, scratch1_reg, scratch3_reg, ArithOption(scratch3_reg, ShiftType::LSL, 11));\n+\n+ // Isolate most significant bits for red and blue.\n+ // 00000000 BBB00000 00000000 RRR00000\n+ AND(scratch3_reg, scratch1_reg, LogicalImm(0xE000E0, GPRSize::B32));\n+ // Set alpha.\n+ // AAAAAAAA BBBBB000 00000000 RRRRR000\n ORR(scratch1_reg, scratch1_reg, LogicalImm(0xFF000000, GPRSize::B32));\n+ // Duplicate most significant bits to form complete red and blue bytes.\n+ // AAAAAAAA BBBBBBBB 00000000 RRRRRRRR\n+ ORR(scratch1_reg, scratch1_reg, scratch3_reg, ArithOption(scratch3_reg, ShiftType::LSR, 5));\n+\n+ // Isolate green bits.\n+ // 00000000 00000000 00000GGG GGG00000\n+ AND(scratch3_reg, scratch2_reg, LogicalImm(0x7E0, GPRSize::B32));\n+ // Isolate most significant bits for green.\n+ // 00000000 00000000 00000GG0 00000000\n+ AND(scratch2_reg, scratch2_reg, LogicalImm(0x600, GPRSize::B32));\n+ // Duplicate most significant bits to form complete green byte.\n+ // 00000000 00000000 00000GGG GGGGG000\n+ ORR(scratch3_reg, scratch3_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 6));', 'path': 'Source/Core/VideoCommon/VertexLoaderARM64.cpp', 'position': 59, 'original_position': 62, 'commit_id': 'f22dd8677ff402e8e79a796a9355e6c5955fe1fd', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "Indeed, BFXIL/BFI are the perfect instructions for this sort of bit operations, but usually take multiple cycles and are often only possible on a specific execution unit, so you can't run multiple in parallel.\r\n\r\nThe optimal sequence is going to be different depending on the exact CPU architecture. Not sure if this code is important enough to consider having multiple versions.\r\n\r\nIn any case, what I'm proposing in the diff is strictly better than what we had across the board.", 'created_at': '2026-10-24T18:21:39Z', 'updated_at': '2026-10-24T18:21:40Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4368046696', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14943', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368046696'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4368046696'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14943'}}, 'original_commit_id': '48d16eb7413ac3456693c34f096940cfc8489107', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368046696/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4366854829, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T18:21:03.092617 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Dentomologist', 'action': 'submitted', 'pr_id': 14946, 'pr_title': 'Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946#pullrequestreview-5639399153', 'comments': [{'id': 4368044822, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFsTFg', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368044822', 'pull_request_review_id': 5639399153, 'diff_hunk': '@@ -9,6 +9,7 @@\n \n #ifdef _WIN32\n #include <windows.h>\n+#include <ctime>\n #include <timeapi.h>\n #endif', 'path': 'Source/Core/Common/Timer.cpp', 'position': 6, 'original_position': 6, 'commit_id': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'user': {'login': 'Dentomologist', 'id': 73494713, 'node_id': 'MDQ6VXNlcjczNDk0NzEz', 'avatar_url': 'https://avatars.githubusercontent.com/u/73494713?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Dentomologist', 'html_url': 'https://github.com/Dentomologist', 'followers_url': 'https://api.github.com/users/Dentomologist/followers', 'following_url': 'https://api.github.com/users/Dentomologist/following{/other_user}', 'gists_url': 'https://api.github.com/users/Dentomologist/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Dentomologist/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Dentomologist/subscriptions', 'organizations_url': 'https://api.github.com/users/Dentomologist/orgs', 'repos_url': 'https://api.github.com/users/Dentomologist/repos', 'events_url': 'https://api.github.com/users/Dentomologist/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Dentomologist/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'I know `<ctime>` was in the Windows #include block before 86da6c98fbd229d87de7cf8b9c7eb94c16923829, but since the functions are used on every platform it should probably be outside it.', 'created_at': '2026-10-24T18:20:59Z', 'updated_at': '2026-10-24T18:20:59Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4368044822', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14946', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368044822'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4368044822'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14946'}}, 'original_commit_id': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368044822/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T17:37:33.991011 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14946, 'pr_title': 'Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946#pullrequestreview-5639178438', 'comments': [], 'type': 'gh_pull_request_review'}
2026-10-24T17:37:19.769092 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'jordan-woyak', 'action': 'submitted', 'pr_id': 14946, 'pr_title': 'Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14946#pullrequestreview-5639177788', 'comments': [{'id': 4367919863, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFkq9w', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367919863', 'pull_request_review_id': 5639177788, 'diff_hunk': '@@ -68,12 +69,6 @@ u64 Timer::ElapsedMs() const\n \n u64 Timer::GetLocalTimeSinceJan1970()\n {\n-#ifdef _MSC_VER\n- std::chrono::zoned_seconds seconds(\n- std::chrono::current_zone(),', 'path': 'Source/Core/Common/Timer.cpp', 'position': 14, 'original_position': 14, 'commit_id': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I think the windows builds have exceptions enabled, but it's fine.", 'created_at': '2026-10-24T17:37:17Z', 'updated_at': '2026-10-24T17:37:17Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4367919863', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14946', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367919863'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14946#discussion_r4367919863'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14946'}}, 'original_commit_id': '5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367919863/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4362802511, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T17:02:54.796466 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'Sintendo', 'action': 'submitted', 'pr_id': 14943, 'pr_title': 'VertexLoaderARM64: Optimize RGB565 and RGBA6666', 'state': 'commented', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14943#pullrequestreview-5639069320', 'comments': [{'id': 4367826840, 'node_id': 'PRRC_kwDOALCn2M8AAAABBFe_mA', 'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367826840', 'pull_request_review_id': 5639069320, 'diff_hunk': '@@ -215,31 +215,47 @@ void VertexLoaderARM64::ReadColor(VertexComponentFormat attribute, ColorFormat f\n break;\n \n case ColorFormat::RGB565:\n- // RRRRRGGG GGGBBBBB\n- // AAAAAAAA BBBBBBBB GGGGGGGG RRRRRRRR\n+ // Load 16 bits and zero-extend.\n+ // 00000000 00000000 GGGBBBBB RRRRRGGG\n LDURH(scratch3_reg, reg, offset);\n \n- REV16(scratch3_reg, scratch3_reg);\n-\n- // B\n- AND(scratch2_reg, scratch3_reg, LogicalImm(0x1F, GPRSize::B32));\n- ORR(scratch2_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 3));\n- ORR(scratch2_reg, scratch2_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 5));\n- ORR(scratch1_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 16));\n-\n- // G\n- UBFM(scratch2_reg, scratch3_reg, 5, 10);\n- ORR(scratch2_reg, ARM64Reg::WSP, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 2));\n- ORR(scratch2_reg, scratch2_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 6));\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 8));\n-\n- // R\n- UBFM(scratch2_reg, scratch3_reg, 11, 15);\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSL, 3));\n- ORR(scratch1_reg, scratch1_reg, scratch2_reg, ArithOption(scratch2_reg, ShiftType::LSR, 2));\n-\n- // A\n+ // Byteswap to make all green bits sequential.\n+ // 00000000 00000000 RRRRRGGG GGGBBBBB\n+ REV16(scratch2_reg, scratch3_reg);\n+\n+ // Isolate red bits. Red is already in the correct position.\n+ // 00000000 00000000 00000000 RRRRR000\n+ AND(scratch1_reg, scratch3_reg, LogicalImm(0xF8, GPRSize::B32));\n+ // Isolate blue bits.\n+ // 00000000 00000000 000BBBBB 00000000\n+ AND(scratch3_reg, scratch3_reg, LogicalImm(0x1F00, GPRSize::B32));\n+ // Shift blue bits into position and combine with red bits.\n+ // 00000000 BBBBB000 00000000 RRRRR000\n+ ORR(scratch1_reg, scratch1_reg, scratch3_reg, ArithOption(scratch3_reg, ShiftType::LSL, 11));', 'path': 'Source/Core/VideoCommon/VertexLoaderARM64.cpp', 'position': 1, 'original_position': 42, 'commit_id': 'f2cb6c886e4ffc920d450cd78f21a0794cd28763', 'user': {'login': 'Sintendo', 'id': 3380580, 'node_id': 'MDQ6VXNlcjMzODA1ODA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3380580?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Sintendo', 'html_url': 'https://github.com/Sintendo', 'followers_url': 'https://api.github.com/users/Sintendo/followers', 'following_url': 'https://api.github.com/users/Sintendo/following{/other_user}', 'gists_url': 'https://api.github.com/users/Sintendo/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Sintendo/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Sintendo/subscriptions', 'organizations_url': 'https://api.github.com/users/Sintendo/orgs', 'repos_url': 'https://api.github.com/users/Sintendo/repos', 'events_url': 'https://api.github.com/users/Sintendo/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Sintendo/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Ah, good idea!', 'created_at': '2026-10-24T17:02:52Z', 'updated_at': '2026-10-24T17:02:52Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4367826840', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14943', 'author_association': 'MEMBER', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367826840'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14943#discussion_r4367826840'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14943'}}, 'original_commit_id': '48d16eb7413ac3456693c34f096940cfc8489107', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4367826840/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'in_reply_to_id': 4366834254, 'is_copilot_code_review': False, 'copilot_code_review_sources': []}], 'type': 'gh_pull_request_review'}
2026-10-24T13:00:08.476516 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'author': 'JosJuice', 'action': 'submitted', 'pr_id': 14878, 'pr_title': 'Android: Add global hotkeys', 'state': 'approved', 'url': 'https://github.com/dolphin-emu/dolphin/pull/14878#pullrequestreview-5638330858', 'comments': [], 'type': 'gh_pull_request_review'}
Recent 'gh_push' events
2026-10-24T20:04:27.940617 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'jordan-woyak', 'before_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'after_sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'commits': [{'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-19T12:34:12-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/UnitTests/Core/CoreTimingTest.cpp'], 'removed': [], 'message': 'UnitTests: Fix CoreTiming.SharedSlot test so it can run independently.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/3c72f4d5425875e32d809dab9821afe9bb1d042e', 'hash': '3c72f4d5425875e32d809dab9821afe9bb1d042e'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-24T15:04:25-05:00', 'username': 'jordan-woyak'}, 'distinct': True, 'added': [], 'modified': ['Source/UnitTests/Core/CoreTimingTest.cpp'], 'removed': [], 'message': 'Merge pull request #14940 from jordan-woyak/CoreTimingTest-fix\n\nUnitTests: Fix CoreTiming.SharedSlot test so it can run independently.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'hash': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-24T18:22:26.784936 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'iwubcode', 'before_sha': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'after_sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'commits': [{'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-23T11:49:22-04:00', 'username': 'OatmealDome'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/Timer.cpp'], 'removed': [], 'message': 'Revert "msvc: use std::chrono for GetLocalTimeSinceJan1970"\n\nThis reverts commit 86da6c98fbd229d87de7cf8b9c7eb94c16923829.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/5ef181ba4dffd6d3d5de47d90de0c22f02657215', 'hash': '5ef181ba4dffd6d3d5de47d90de0c22f02657215'}, {'author': {'name': 'iwubcode', 'email': 'iwubcode@users.noreply.github.com', 'date': '2026-10-24T13:22:24-05:00', 'username': 'iwubcode'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Common/Timer.cpp'], 'removed': [], 'message': 'Merge pull request #14946 from OatmealDome/revert-win-std-chrono\n\nRevert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'url': 'https://github.com/dolphin-emu/dolphin/commit/b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'hash': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-24T12:16:24.669085 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': 'e1d35f666cc35f6ead55d32ea2679df44d04da72', 'after_sha': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'commits': [{'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-04T22:33:27-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.cpp', 'Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.h'], 'removed': [], 'message': 'Skylanders: Replace mbedtls_aes usage with Common::AES and minor warning cleanups.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/e56740eabce91b58119ad7a03f5a42db16a3e077', 'hash': 'e56740eabce91b58119ad7a03f5a42db16a3e077'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-24T14:16:21+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.cpp', 'Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.h'], 'removed': [], 'message': 'Merge pull request #14917 from jordan-woyak/skylanders-common-aes\n\nSkylanders: Replace mbedtls_aes usage with Common::AES.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/c12121f419c40f99eeb65a9039d9fc95be72e94a', 'hash': 'c12121f419c40f99eeb65a9039d9fc95be72e94a'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-23T23:43:13.829132 {'source': 'ghhookparser', 'repo': 'dolphin-emu/fifoci', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '3b2b272b9e30ee9272e98a082bb177828b55aea1', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-23T23:43:10Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['fifoci/runner/uv.lock'], 'removed': [], 'message': 'build(deps-dev): bump black from 26.5.1 to 26.10.1 in /fifoci/runner\n\nBumps [black](https://github.com/psf/black) from 26.5.1 to 26.10.1.\n- [Release notes](https://github.com/psf/black/releases)\n- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)\n- [Commits](https://github.com/psf/black/compare/26.5.1...26.10.1)\n\n---\nupdated-dependencies:\n- dependency-name: black\n dependency-version: 26.10.1\n dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/fifoci/commit/3b2b272b9e30ee9272e98a082bb177828b55aea1', 'hash': '3b2b272b9e30ee9272e98a082bb177828b55aea1'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/fifoci/runner/black-26.10.1', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-23T00:10:39.440717 {'source': 'ghhookparser', 'repo': 'dolphin-emu/central', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '6ad4b6953af25fade92abf42a6c20548eddffffb', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-23T00:10:37Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump certifi from 2026.7.22 to 2026.10.19\n\nBumps [certifi](https://github.com/certifi/python-certifi) from 2026.7.22 to 2026.10.19.\n- [Commits](https://github.com/certifi/python-certifi/compare/2026.07.22...2026.10.19)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n dependency-version: 2026.10.19\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/central/commit/6ad4b6953af25fade92abf42a6c20548eddffffb', 'hash': '6ad4b6953af25fade92abf42a6c20548eddffffb'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/certifi-2026.10.19', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-23T00:10:36.300805 {'source': 'ghhookparser', 'repo': 'dolphin-emu/central', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '623c06e836606b5b2d6b5a4bfcac08bc3f34925e', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-23T00:10:33Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps-dev): bump black from 26.5.1 to 26.10.1\n\nBumps [black](https://github.com/psf/black) from 26.5.1 to 26.10.1.\n- [Release notes](https://github.com/psf/black/releases)\n- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)\n- [Commits](https://github.com/psf/black/compare/26.5.1...26.10.1)\n\n---\nupdated-dependencies:\n- dependency-name: black\n dependency-version: 26.10.1\n dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/central/commit/623c06e836606b5b2d6b5a4bfcac08bc3f34925e', 'hash': '623c06e836606b5b2d6b5a4bfcac08bc3f34925e'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/black-26.10.1', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T23:56:03.195102 {'source': 'ghhookparser', 'repo': 'dolphin-emu/netplay-index', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '8c26dcef9aaaae7181e2f59d7f56a5d3e852e68f', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-22T23:56:00Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump certifi from 2026.7.22 to 2026.10.19\n\nBumps [certifi](https://github.com/certifi/python-certifi) from 2026.7.22 to 2026.10.19.\n- [Commits](https://github.com/certifi/python-certifi/compare/2026.07.22...2026.10.19)\n\n---\nupdated-dependencies:\n- dependency-name: certifi\n dependency-version: 2026.10.19\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/netplay-index/commit/8c26dcef9aaaae7181e2f59d7f56a5d3e852e68f', 'hash': '8c26dcef9aaaae7181e2f59d7f56a5d3e852e68f'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/certifi-2026.10.19', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T23:56:01.607794 {'source': 'ghhookparser', 'repo': 'dolphin-emu/netplay-index', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '70b6d66b9dde12acf21a57fc84dc83bc1ff3249a', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-22T23:55:59Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps-dev): bump black from 26.5.1 to 26.10.1\n\nBumps [black](https://github.com/psf/black) from 26.5.1 to 26.10.1.\n- [Release notes](https://github.com/psf/black/releases)\n- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md)\n- [Commits](https://github.com/psf/black/compare/26.5.1...26.10.1)\n\n---\nupdated-dependencies:\n- dependency-name: black\n dependency-version: 26.10.1\n dependency-type: direct:development\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/netplay-index/commit/70b6d66b9dde12acf21a57fc84dc83bc1ff3249a', 'hash': '70b6d66b9dde12acf21a57fc84dc83bc1ff3249a'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/black-26.10.1', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T20:05:25.812213 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'jordan-woyak', 'before_sha': '10d958e66bb5d7574166a10f57839a288c5a7c64', 'after_sha': 'e1d35f666cc35f6ead55d32ea2679df44d04da72', 'commits': [{'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-04T16:04:21-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/Hash.cpp', 'Source/Core/Common/Hash.h'], 'removed': [], 'message': 'Common: Create MD5Context class and ComputeMD5 function to minimize exposure to mbedtls throughout the project.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/db5bbbd6cf340fd8e77244ad452089fae0ff33ae', 'hash': 'db5bbbd6cf340fd8e77244ad452089fae0ff33ae'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-04T16:04:42-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/HW/WiiSave.cpp'], 'removed': [], 'message': 'WiiSave: Use Common::ComputeMD5 instead of mbedtls.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/58a0864d035ccc690698fb76063f2936906bd714', 'hash': '58a0864d035ccc690698fb76063f2936906bd714'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-04T16:05:05-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.cpp'], 'removed': [], 'message': 'SkylanderFigure: Use Common::ComputeMD5 instead of mbedtls.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/304086d3179d5c9f3bc94c4487e943ec449280ab', 'hash': '304086d3179d5c9f3bc94c4487e943ec449280ab'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-04T16:05:09-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/DiscIO/VolumeVerifier.cpp', 'Source/Core/DiscIO/VolumeVerifier.h'], 'removed': [], 'message': 'DiscIO/VolumeVerifier: Use Common::MD5Context instead of mbedtls.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/7e46e85e8fb3cff68f05bc160c7ac3ed77b1414b', 'hash': '7e46e85e8fb3cff68f05bc160c7ac3ed77b1414b'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-22T15:05:23-05:00', 'username': 'jordan-woyak'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Common/Hash.cpp', 'Source/Core/Common/Hash.h', 'Source/Core/Core/HW/WiiSave.cpp', 'Source/Core/Core/IOS/USB/Emulated/Skylanders/SkylanderFigure.cpp', 'Source/Core/DiscIO/VolumeVerifier.cpp', 'Source/Core/DiscIO/VolumeVerifier.h'], 'removed': [], 'message': 'Merge pull request #14913 from jordan-woyak/md5\n\nCommon: Introduce MD5Context class and ComputeMD5 function to minimize mbedtls dependence.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/e1d35f666cc35f6ead55d32ea2679df44d04da72', 'hash': 'e1d35f666cc35f6ead55d32ea2679df44d04da72'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T19:14:49.767406 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'jordan-woyak', 'before_sha': '2c805fee8f232d090c454381bb1b8422242345e1', 'after_sha': '10d958e66bb5d7574166a10f57839a288c5a7c64', 'commits': [{'author': {'name': 'Dentomologist', 'email': 'dentomologist@gmail.com', 'date': '2026-10-20T14:20:23-07:00', 'username': 'Dentomologist'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/DolphinQt/CMakeLists.txt'], 'removed': [], 'message': "CMake: Enforce minimum Qt version 6.2\n\nQt 6.2 has been de facto required since\nafa6e26e5de58e942c8e7ef3a02632ccfb851d3d added a call to\nQPixmap::deviceIndependentSize which was introduced in that Qt version.\n\nQt 6.2 was released 5 years ago and we've required 6.2+ for over 2\nyears, so let's make that requirement explicit in CMakeLists.txt instead\nof having an apparently random compile error if anyone happens to try\nbuilding with an older Qt version.", 'url': 'https://github.com/dolphin-emu/dolphin/commit/33ad9ed02f0f66b5c202a87e4c0896f96c57ff87', 'hash': '33ad9ed02f0f66b5c202a87e4c0896f96c57ff87'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-22T14:14:47-05:00', 'username': 'jordan-woyak'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/DolphinQt/CMakeLists.txt'], 'removed': [], 'message': 'Merge pull request #14942 from Dentomologist/cmake_add_explicit_check_for_minimum_qt_version\n\nCMake: Enforce minimum Qt version 6.2', 'url': 'https://github.com/dolphin-emu/dolphin/commit/10d958e66bb5d7574166a10f57839a288c5a7c64', 'hash': '10d958e66bb5d7574166a10f57839a288c5a7c64'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T17:12:38.072700 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JMC47', 'before_sha': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'after_sha': '2c805fee8f232d090c454381bb1b8422242345e1', 'commits': [{'author': {'name': 'Tom Pratt', 'email': 'tom.pratt@outlook.com', 'date': '2026-05-11T09:01:20-07:00', 'username': 'tom-pratt'}, 'distinct': False, 'added': [], 'modified': ['Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/NetplaySession.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/model/GameDigestProgress.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/model/NetplayViewModel.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayActivity.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt', 'Source/Android/app/src/main/res/values/strings.xml', 'Source/Android/jni/NetPlay/NetPlayUICallbacks.h', 'Source/Android/jni/NetPlay/Netplay.cpp'], 'removed': [], 'message': 'Android: Trigger netplay game digest check\n\nAlso trigger abort / dismiss from the host when closing the dialog.\nAdd explicit "finished" property to GameDigestProgress since the UI is different depending on this state.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/66657167e357597b99b0957a4ee27a0da8b36571', 'hash': '66657167e357597b99b0957a4ee27a0da8b36571'}, {'author': {'name': 'JMC47', 'email': 'JMC4789@gmail.com', 'date': '2026-10-22T13:12:33-04:00', 'username': 'JMC47'}, 'distinct': True, 'added': [], 'modified': ['Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/NetplaySession.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/model/GameDigestProgress.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/model/NetplayViewModel.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayActivity.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/features/netplay/ui/NetplayScreen.kt', 'Source/Android/app/src/main/java/org/dolphinemu/dolphinemu/ui/theme/DolphinTheme.kt', 'Source/Android/app/src/main/res/values/strings.xml', 'Source/Android/jni/NetPlay/NetPlayUICallbacks.h', 'Source/Android/jni/NetPlay/Netplay.cpp'], 'removed': [], 'message': 'Merge pull request #14734 from tom-pratt/trigger-game-digest-check\n\nAndroid: Trigger netplay game digest check', 'url': 'https://github.com/dolphin-emu/dolphin/commit/2c805fee8f232d090c454381bb1b8422242345e1', 'hash': '2c805fee8f232d090c454381bb1b8422242345e1'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-22T12:26:38.608172 {'source': 'ghhookparser', 'repo': 'dolphin-emu/sadm', 'pusher': 'OatmealDome', 'before_sha': 'd3c0d0059a15878511b86aecc51b488392e0e184', 'after_sha': '983c9bd664a2a83971d33b37f57189e99d10a7e9', 'commits': [{'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-22T08:25:03-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['.github/workflows/containers.yml'], 'removed': [], 'message': 'Actions: Add workflow dispatch to build containers workflow', 'url': 'https://github.com/dolphin-emu/sadm/commit/ac077f40caa97d98924f2a6eaa49aec3669a7d0f', 'hash': 'ac077f40caa97d98924f2a6eaa49aec3669a7d0f'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-22T08:25:36-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['flake.lock'], 'removed': [], 'message': "flake.lock: Update\n\nFlake lock file updates:\n\n• Updated input 'agenix':\n 'github:ryantm/agenix/3daa710894355fa2fad8243380af373a2b4046ef?narHash=sha256-n7wew722m1OTBT9DOIMxNX/NF4zfsSUABAO5eW3wikE%3D' (2026-09-30)\n → 'github:ryantm/agenix/5e5b88a0c8e56f291a108c2fe9934054d9745b2e?narHash=sha256-8tKjSQajD3mUND1GaAuaWTcuyUpgcGsh5V%2Bl4ibzC7U%3D' (2026-10-20)\n• Updated input 'nixpkgs':\n 'github:NixOS/nixpkgs/7993f34ee47e28a3d607a525aadc6c94b73be728?narHash=sha256-ZGq3ptZzA%2BoO0N/Wi/F%2BGbuTijLkYExD01LvpNFAvr0%3D' (2026-10-12)\n → 'github:NixOS/nixpkgs/da6dc0e7b26060f2f71ce3ef7088fb56ee44fa36?narHash=sha256-MlvRfa1O5Cqc2/a%2BgG%2Bl9TSuowEoCKCmrJ1d9oAVm0I%3D' (2026-10-21)\n• Updated input 'pyproject-build-systems':\n 'github:pyproject-nix/build-system-pkgs/953d35d03a51dbecaf3feb3fb679eb63e90ebeb4?narHash=sha256-pyru9MpuXRiyq0Bd4q0nHpL4T6HCuZT4B%2BalcgAYE4A%3D' (2026-10-05)\n → 'github:pyproject-nix/build-system-pkgs/a17819c85163988e063806ffc4f6d2716bc8ead8?narHash=sha256-mGOkvueuMGSRiD75ccxFzfEvSlIU9ztjFluHMKOtogY%3D' (2026-10-20)\n• Updated input 'pyproject-build-systems/uv2nix':\n 'github:pyproject-nix/uv2nix/a24323e9e6ecbbf305c238845ff6c612d50467c0?narHash=sha256-wFnDm/o/4OebDlpGFyVXP8DLUx0/gR/jUFuGqmTwsQg%3D' (2026-09-25)\n → 'github:pyproject-nix/uv2nix/7aba73a3d85454f1118f8cf9de97979b4d26bcac?narHash=sha256-PMtgvHuGijoIAtPtrBm7kJOI6fxzX4LYPAIK%2BQVGY%2BY%3D' (2026-10-16)\n• Updated input 'rust-overlay':\n 'github:oxalica/rust-overlay/3100cf6ff140fb298f09192de610f4037d3bab0f?narHash=sha256-7KXUW3FKbZAstFiK09LJ1sUnPN2dO5RX9ROCZgGbeZw%3D' (2026-10-13)\n → 'github:oxalica/rust-overlay/5f267b7f323a4d6df0b9c0e3eaa043cbe85386f2?narHash=sha256-E8zFJilWlORqzIUJizyhZ/0WKBOizuM6s1nRSgPRomo%3D' (2026-10-22)\n• Updated input 'uv2nix':\n 'github:pyproject-nix/uv2nix/37462fae7b37be45d78f754d1c39e8813ede0f80?narHash=sha256-39EtILDexiwJqShYD/yu1B73OvF6DigAqF040egC07g%3D' (2026-10-12)\n → 'github:pyproject-nix/uv2nix/0fdaa03ea3c3c16dbb1fe4d69108f07227a4b42d?narHash=sha256-UWo7wDPi00YXOI1Io7g4vGKuCSPJ863kHJVDzsgqtoM%3D' (2026-10-22)", 'url': 'https://github.com/dolphin-emu/sadm/commit/983c9bd664a2a83971d33b37f57189e99d10a7e9', 'hash': '983c9bd664a2a83971d33b37f57189e99d10a7e9'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-20T10:19:25.215424 {'source': 'ghhookparser', 'repo': 'dolphin-emu/central', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '9d545400dc491ebcbf08ce45d17550bf1262fed4', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-20T10:19:21Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump multidict from 6.7.1 to 6.9.1\n\nBumps [multidict](https://github.com/aio-libs/multidict) from 6.7.1 to 6.9.1.\n- [Release notes](https://github.com/aio-libs/multidict/releases)\n- [Changelog](https://github.com/aio-libs/multidict/blob/master/CHANGES.rst)\n- [Commits](https://github.com/aio-libs/multidict/compare/v6.7.1...v6.9.1)\n\n---\nupdated-dependencies:\n- dependency-name: multidict\n dependency-version: 6.9.1\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/central/commit/9d545400dc491ebcbf08ce45d17550bf1262fed4', 'hash': '9d545400dc491ebcbf08ce45d17550bf1262fed4'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/multidict-6.9.1', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-20T09:45:59.112048 {'source': 'ghhookparser', 'repo': 'dolphin-emu/netplay-index', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': 'dfd09f29f1b90c318de05bdbf38356d337dcbc4d', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-20T09:45:56Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump multidict from 6.7.1 to 6.9.1\n\nBumps [multidict](https://github.com/aio-libs/multidict) from 6.7.1 to 6.9.1.\n- [Release notes](https://github.com/aio-libs/multidict/releases)\n- [Changelog](https://github.com/aio-libs/multidict/blob/master/CHANGES.rst)\n- [Commits](https://github.com/aio-libs/multidict/compare/v6.7.1...v6.9.1)\n\n---\nupdated-dependencies:\n- dependency-name: multidict\n dependency-version: 6.9.1\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/netplay-index/commit/dfd09f29f1b90c318de05bdbf38356d337dcbc4d', 'hash': 'dfd09f29f1b90c318de05bdbf38356d337dcbc4d'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/multidict-6.9.1', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-20T06:10:03.224634 {'source': 'ghhookparser', 'repo': 'dolphin-emu/central', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': '6ea630e5224e19d89f7b3c2601ef51e038962fe3', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-20T06:10:00Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump aiohttp from 3.14.3 to 3.14.4\n\n---\nupdated-dependencies:\n- dependency-name: aiohttp\n dependency-version: 3.14.4\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/central/commit/6ea630e5224e19d89f7b3c2601ef51e038962fe3', 'hash': '6ea630e5224e19d89f7b3c2601ef51e038962fe3'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/aiohttp-3.14.4', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-20T04:23:47.430910 {'source': 'ghhookparser', 'repo': 'dolphin-emu/netplay-index', 'pusher': 'dependabot[bot]', 'before_sha': '0000000000000000000000000000000000000000', 'after_sha': 'c8cdb9edb91b5292fcefa1b834ca2116df47e8f0', 'commits': [{'author': {'name': 'dependabot[bot]', 'email': '49699333+dependabot[bot]@users.noreply.github.com', 'date': '2026-10-20T04:23:45Z', 'username': 'dependabot[bot]'}, 'distinct': True, 'added': [], 'modified': ['uv.lock'], 'removed': [], 'message': 'build(deps): bump aiohttp from 3.14.3 to 3.14.4\n\n---\nupdated-dependencies:\n- dependency-name: aiohttp\n dependency-version: 3.14.4\n dependency-type: indirect\n...\n\nSigned-off-by: dependabot[bot] <support@github.com>', 'url': 'https://github.com/dolphin-emu/netplay-index/commit/c8cdb9edb91b5292fcefa1b834ca2116df47e8f0', 'hash': 'c8cdb9edb91b5292fcefa1b834ca2116df47e8f0'}], 'base_ref_name': None, 'ref_name': 'dependabot/uv/aiohttp-3.14.4', 'ref_type': 'heads', 'created': True, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-19T16:56:23.730113 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JMC47', 'before_sha': '1822e3859f061c6f81076c94eb4ba7e6e0a3706c', 'after_sha': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'commits': [{'author': {'name': 'Martino Fontana', 'email': 'tinozzo123@gmail.com', 'date': '2025-12-22T12:28:12+01:00', 'username': 'SuperSamus'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Branch.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp', 'Source/Core/Core/PowerPC/JitArm64/JitArm64_Branch.cpp', 'Source/Core/Core/PowerPC/PPCAnalyst.cpp', 'Source/Core/Core/PowerPC/PPCAnalyst.h'], 'removed': [], 'message': "Jit: Followed unconditional branches are a property added by the Analyzer, not something to assume\n\nIf an unconditional branch is not the last instruction of the block, assuming that this means that the branch must have been followed is an unsafe assumption on how the analyzer works that may not hold true in the future.\nAs a bonus: JitArm64, unlike x86, didn't skip followed `bcx`s. Now it does.", 'url': 'https://github.com/dolphin-emu/dolphin/commit/69b75fed12eae2d500da89d400d036739ff95b4c', 'hash': '69b75fed12eae2d500da89d400d036739ff95b4c'}, {'author': {'name': 'JMC47', 'email': 'JMC4789@gmail.com', 'date': '2026-10-19T12:56:21-04:00', 'username': 'JMC47'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Branch.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit_Integer.cpp', 'Source/Core/Core/PowerPC/JitArm64/JitArm64_Branch.cpp', 'Source/Core/Core/PowerPC/PPCAnalyst.cpp', 'Source/Core/Core/PowerPC/PPCAnalyst.h'], 'removed': [], 'message': 'Merge pull request #14388 from SuperSamus/jit-branch-follow-explicit\n\nJit: Followed unconditional branches are a property added by the Analyzer, not something to assume', 'url': 'https://github.com/dolphin-emu/dolphin/commit/cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'hash': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-19T04:31:10.141871 {'source': 'ghhookparser', 'repo': 'dolphin-emu/sadm', 'pusher': 'OatmealDome', 'before_sha': '7605fd14fb447e2fa9e0faee4994dd631260c8e0', 'after_sha': 'd3c0d0059a15878511b86aecc51b488392e0e184', 'commits': [{'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T11:27:04-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['machines/altair/default.nix', 'roles/foreign-builders/default.nix'], 'removed': [], 'message': 'foreign-builder: Don\'t require the "-builder" suffix with image names', 'url': 'https://github.com/dolphin-emu/sadm/commit/fa6ce2e376f9977d58cabf1658a2364ac4f5e601', 'hash': 'fa6ce2e376f9977d58cabf1658a2364ac4f5e601'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T12:18:26-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': ['secrets/container-altair-appimage-env.age', 'secrets/container-android-env.age', 'secrets/container-debian-env.age', 'secrets/container-steamrt-env.age', 'secrets/container-ubuntu-lts-env.age'], 'modified': ['roles/foreign-builders/default.nix', 'secrets/secrets.nix'], 'removed': [], 'message': 'foreign-builders: Have one password file for each container', 'url': 'https://github.com/dolphin-emu/sadm/commit/15ee72a373cc26aba8bf6f8f77bd38f032a5a944', 'hash': '15ee72a373cc26aba8bf6f8f77bd38f032a5a944'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T12:18:44-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['machines/altair/default.nix'], 'removed': [], 'message': 'machines/altair: Reformat android container definition', 'url': 'https://github.com/dolphin-emu/sadm/commit/2e212152a9d280ee49bb22f04895ca960461f89a', 'hash': '2e212152a9d280ee49bb22f04895ca960461f89a'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T12:22:32-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['secrets/oci-registry-password.age'], 'removed': [], 'message': 'secrets: Re-encrypt oci-registry-password with support for deneb', 'url': 'https://github.com/dolphin-emu/sadm/commit/a00c4b68a511011c8070a5ed92229322439737e7', 'hash': 'a00c4b68a511011c8070a5ed92229322439737e7'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T12:23:02-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': ['secrets/container-deneb-appimage-env.age'], 'modified': ['machines/deneb/default.nix', 'secrets/secrets.nix'], 'removed': [], 'message': 'machines/deneb: Add AppImage arm64 builder', 'url': 'https://github.com/dolphin-emu/sadm/commit/c1383d702fe381d84bb243e24a7943182e1b2717', 'hash': 'c1383d702fe381d84bb243e24a7943182e1b2717'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-17T12:24:34-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['roles/buildbot/etc/master.cfg', 'roles/central/default.nix', 'secrets/buildbot-workers-passwords.age'], 'removed': [], 'message': 'buildbot: Add AppImage arm64 builder', 'url': 'https://github.com/dolphin-emu/sadm/commit/4c9ac430e0ecc21179545d0266e238716cd56304', 'hash': '4c9ac430e0ecc21179545d0266e238716cd56304'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-18T12:19:03-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['roles/buildbot/etc/master.cfg'], 'removed': [], 'message': 'buildbot: Add support for dev and release AppImage builds', 'url': 'https://github.com/dolphin-emu/sadm/commit/9e9552c060ed8459f9b10fea619f128389915eb7', 'hash': '9e9552c060ed8459f9b10fea619f128389915eb7'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-18T16:14:53-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['roles/foreign-builders/default.nix'], 'removed': [], 'message': 'foreign-builders: Allow individual builders to specify their own extra options', 'url': 'https://github.com/dolphin-emu/sadm/commit/849f1b98d00c650e8256396c5418f2093188ea67', 'hash': '849f1b98d00c650e8256396c5418f2093188ea67'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-19T00:30:02-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['machines/altair/default.nix', 'roles/foreign-builders/default.nix'], 'removed': [], 'message': 'machines/altair: Move /dev/kvm flag to be specific to the Android builder', 'url': 'https://github.com/dolphin-emu/sadm/commit/e2ad180e9f9bf14b25bd8b46ff7cf3712f03d75f', 'hash': 'e2ad180e9f9bf14b25bd8b46ff7cf3712f03d75f'}, {'author': {'name': 'OatmealDome', 'email': 'julian@oatmealdome.me', 'date': '2026-10-19T00:30:22-04:00', 'username': 'OatmealDome'}, 'distinct': True, 'added': [], 'modified': ['roles/buildbot/etc/master.cfg'], 'removed': [], 'message': 'buildbot: Correct path for deleting the existing AppDir', 'url': 'https://github.com/dolphin-emu/sadm/commit/d3c0d0059a15878511b86aecc51b488392e0e184', 'hash': 'd3c0d0059a15878511b86aecc51b488392e0e184'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-18T18:26:45.010021 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'jordan-woyak', 'before_sha': '41460454e9600f909950fddf0abd13a138430162', 'after_sha': '1822e3859f061c6f81076c94eb4ba7e6e0a3706c', 'commits': [{'author': {'name': 'iwubcode', 'email': 'iwubcode@users.noreply.github.com', 'date': '2026-10-16T01:04:33-05:00', 'username': 'iwubcode'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/PowerPC/MMU.cpp', 'Source/Core/VideoBackends/Null/NullGfx.cpp', 'Source/Core/VideoBackends/Null/NullGfx.h', 'Source/Core/VideoBackends/Software/SWEfbInterface.cpp', 'Source/Core/VideoBackends/Software/SWEfbInterface.h', 'Source/Core/VideoCommon/BPFunctions.cpp', 'Source/Core/VideoCommon/EFBInterface.cpp', 'Source/Core/VideoCommon/EFBInterface.h'], 'removed': [], 'message': 'VideoCommon: remove global framebuffer manager from EFBInterface and instead pass it in', 'url': 'https://github.com/dolphin-emu/dolphin/commit/f71b0a48b352379a213a65a0a796cac5aab4ba3f', 'hash': 'f71b0a48b352379a213a65a0a796cac5aab4ba3f'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-18T13:26:42-05:00', 'username': 'jordan-woyak'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Core/PowerPC/MMU.cpp', 'Source/Core/VideoBackends/Null/NullGfx.cpp', 'Source/Core/VideoBackends/Null/NullGfx.h', 'Source/Core/VideoBackends/Software/SWEfbInterface.cpp', 'Source/Core/VideoBackends/Software/SWEfbInterface.h', 'Source/Core/VideoCommon/BPFunctions.cpp', 'Source/Core/VideoCommon/EFBInterface.cpp', 'Source/Core/VideoCommon/EFBInterface.h'], 'removed': [], 'message': 'Merge pull request #14934 from iwubcode/efb_interface_remove_global\n\nVideoCommon: remove global framebuffer manager from EFBInterface', 'url': 'https://github.com/dolphin-emu/dolphin/commit/1822e3859f061c6f81076c94eb4ba7e6e0a3706c', 'hash': '1822e3859f061c6f81076c94eb4ba7e6e0a3706c'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-18T12:51:21.237475 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': '8c19346fa956c37264751868a8ac4d674bfff6de', 'after_sha': '41460454e9600f909950fddf0abd13a138430162', 'commits': [{'author': {'name': 'Acts1631', 'email': 'acts1631kjv@proton.me', 'date': '2026-08-04T11:47:51-04:00', 'username': 'acts-1631'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/TraversalServer.cpp'], 'removed': [], 'message': 'Traversal: update pending-packet time on socket timeout\n\nPending traversal packets were only expired after receive events. If a\nclient did not acknowledge a response and no more packets arrived, the\nserver retained the pending entry indefinitely.\n\nUpdate the current time before handling socket timeouts. Pending packets\nwill then retry and expire while the server is idle.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/93097f65ea9ae8c2c9c85481ba2cf7d0139480cb', 'hash': '93097f65ea9ae8c2c9c85481ba2cf7d0139480cb'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-18T14:51:18+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Common/TraversalServer.cpp'], 'removed': [], 'message': 'Merge pull request #14796 from acts-1631/security/traversal-pending-timeout\n\nTraversal: update pending-packet time on socket timeout', 'url': 'https://github.com/dolphin-emu/dolphin/commit/41460454e9600f909950fddf0abd13a138430162', 'hash': '41460454e9600f909950fddf0abd13a138430162'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-18T10:25:49.009860 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': 'b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7', 'after_sha': '8c19346fa956c37264751868a8ac4d674bfff6de', 'commits': [{'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-09T14:50:48-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['CMakeLists.txt'], 'removed': [], 'message': 'CMakeLists: Bump version requirements to allow use of std::jthread.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/5bcd55eef5323db2d83bd181f128409edc1d902e', 'hash': '5bcd55eef5323db2d83bd181f128409edc1d902e'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-09T14:51:43-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/CMakeLists.txt'], 'removed': [], 'message': 'CMakeLists: Add -fexperimental-library to allow use of std::jthread with libc++ 18.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/0f56e58742a64a993e4f2f7b34cbafccb613ebcd', 'hash': '0f56e58742a64a993e4f2f7b34cbafccb613ebcd'}, {'author': {'name': 'Jordan Woyak', 'email': 'jordan.woyak@gmail.com', 'date': '2026-10-09T14:52:08-05:00', 'username': 'jordan-woyak'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/DiscIO/CachedBlob.cpp'], 'removed': [], 'message': 'DiscIO/CachedBlob: Minor cleanup by replacing std::thread with std::jthread.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/1acbcaceffdf11d5b6d90fe2c864a8683b930908', 'hash': '1acbcaceffdf11d5b6d90fe2c864a8683b930908'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-18T12:25:46+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': [], 'modified': ['CMakeLists.txt', 'Source/CMakeLists.txt', 'Source/Core/DiscIO/CachedBlob.cpp'], 'removed': [], 'message': 'Merge pull request #14621 from jordan-woyak/cached-blob-jthread\n\nDiscIO/CachedBlob: Minor cleanup by replacing std::thread with std::jthread.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/8c19346fa956c37264751868a8ac4d674bfff6de', 'hash': '8c19346fa956c37264751868a8ac4d674bfff6de'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-18T10:12:03.828555 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': '38d619b07691231f54e6f037fcf30a3b64fdd5a5', 'after_sha': 'b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7', 'commits': [{'author': {'name': 'Joshua Vandaële', 'email': 'joshua@vandaele.software', 'date': '2026-08-03T18:50:13+02:00', 'username': 'JoshuaVandaele'}, 'distinct': False, 'added': ['CMake/DolphinDisableWarnings.cmake'], 'modified': ['CMake/DolphinLibraryTools.cmake', 'CMakeLists.txt', 'Externals/Bochs_disasm/CMakeLists.txt', 'Externals/FreeSurround/CMakeLists.txt', 'Externals/LZO/CMakeLists.txt', 'Externals/SDL/CMakeLists.txt', 'Externals/SFML/CMakeLists.txt', 'Externals/bzip2/CMakeLists.txt', 'Externals/cpp-ipc/CMakeLists.txt', 'Externals/cpp-optparse/CMakeLists.txt', 'Externals/cubeb/CMakeLists.txt', 'Externals/discord-rpc/src/CMakeLists.txt', 'Externals/ed25519/CMakeLists.txt', 'Externals/enet/CMakeLists.txt', 'Externals/fmt/CMakeLists.txt', 'Externals/glslang/CMakeLists.txt', 'Externals/hidapi/CMakeLists.txt', 'Externals/imgui/CMakeLists.txt', 'Externals/implot/CMakeLists.txt', 'Externals/libiconv/CMakeLists.txt', 'Externals/liblzma/CMakeLists.txt', 'Externals/libusb/CMakeLists.txt', 'Externals/lz4/CMakeLists.txt', 'Externals/mGBA/CMakeLists.txt', 'Externals/mbedtls/library/CMakeLists.txt', 'Externals/miniupnpc/CMakeLists.txt', 'Externals/minizip-ng/CMakeLists.txt', 'Externals/pugixml/CMakeLists.txt', 'Externals/rcheevos/CMakeLists.txt', 'Externals/spirv_cross/CMakeLists.txt', 'Externals/tinygltf/CMakeLists.txt', 'Externals/xxhash/CMakeLists.txt', 'Externals/zlib-ng/CMakeLists.txt', 'Externals/zstd/CMakeLists.txt'], 'removed': ['CMake/DolphinDisableWarningsMSVC.cmake'], 'message': 'CMake: Automatically disable warnings for Externals', 'url': 'https://github.com/dolphin-emu/dolphin/commit/89660f5beae0a3f307ac1587c016e93a4efaed63', 'hash': '89660f5beae0a3f307ac1587c016e93a4efaed63'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-18T12:12:01+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': ['CMake/DolphinDisableWarnings.cmake'], 'modified': ['CMake/DolphinLibraryTools.cmake', 'CMakeLists.txt', 'Externals/Bochs_disasm/CMakeLists.txt', 'Externals/FreeSurround/CMakeLists.txt', 'Externals/LZO/CMakeLists.txt', 'Externals/SDL/CMakeLists.txt', 'Externals/SFML/CMakeLists.txt', 'Externals/bzip2/CMakeLists.txt', 'Externals/cpp-ipc/CMakeLists.txt', 'Externals/cpp-optparse/CMakeLists.txt', 'Externals/cubeb/CMakeLists.txt', 'Externals/discord-rpc/src/CMakeLists.txt', 'Externals/ed25519/CMakeLists.txt', 'Externals/enet/CMakeLists.txt', 'Externals/fmt/CMakeLists.txt', 'Externals/glslang/CMakeLists.txt', 'Externals/hidapi/CMakeLists.txt', 'Externals/imgui/CMakeLists.txt', 'Externals/implot/CMakeLists.txt', 'Externals/libiconv/CMakeLists.txt', 'Externals/liblzma/CMakeLists.txt', 'Externals/libusb/CMakeLists.txt', 'Externals/lz4/CMakeLists.txt', 'Externals/mGBA/CMakeLists.txt', 'Externals/mbedtls/library/CMakeLists.txt', 'Externals/miniupnpc/CMakeLists.txt', 'Externals/minizip-ng/CMakeLists.txt', 'Externals/pugixml/CMakeLists.txt', 'Externals/rcheevos/CMakeLists.txt', 'Externals/spirv_cross/CMakeLists.txt', 'Externals/tinygltf/CMakeLists.txt', 'Externals/xxhash/CMakeLists.txt', 'Externals/zlib-ng/CMakeLists.txt', 'Externals/zstd/CMakeLists.txt'], 'removed': ['CMake/DolphinDisableWarningsMSVC.cmake'], 'message': 'Merge pull request #14793 from JoshuaVandaele/auto-off-warns\n\nCMake: Automatically disable warnings for Externals', 'url': 'https://github.com/dolphin-emu/dolphin/commit/b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7', 'hash': 'b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-17T17:14:13.039578 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': '1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928', 'after_sha': '38d619b07691231f54e6f037fcf30a3b64fdd5a5', 'commits': [{'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-08-09T19:42:59+02:00', 'username': 'JosJuice'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/MemArena.h'], 'removed': [], 'message': 'Common: Fix LazyMemoryRegion::EnsureMemoryPagesWritable\n\nIf (offset + size) % BLOCK_SIZE was smaller than offset % BLOCK_SIZE,\nthe loop terminated one iteration too early, potentially leaving a block\nread-only.\n\nNone of the existing users of LazyMemoryRegion could trigger this bug,\nbecause they never made EnsureMemoryPagesWritable calls that straddled\nacross two blocks, but the next commit will add a new use that does.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/d2f7ed3602be867051639dcee2c660a1879d0b97', 'hash': 'd2f7ed3602be867051639dcee2c660a1879d0b97'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-08-09T17:37:15+02:00', 'username': 'JosJuice'}, 'distinct': False, 'added': ['Source/Core/Common/LazyMemoryRegionBitSet.cpp', 'Source/Core/Common/LazyMemoryRegionBitSet.h', 'Source/UnitTests/Common/LazyMemoryRegionBitSetTest.cpp'], 'modified': ['Source/Core/Common/CMakeLists.txt', 'Source/Core/Common/MemArena.h', 'Source/Core/Common/MemArenaWin.cpp', 'Source/Core/Core/FifoPlayer/FifoPlayer.cpp', 'Source/Core/Core/PowerPC/CPUCoreBase.h', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.cpp', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.h', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreterBlockCache.cpp', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreterBlockCache.h', 'Source/Core/Core/PowerPC/Interpreter/Interpreter.cpp', 'Source/Core/Core/PowerPC/Interpreter/Interpreter.h', 'Source/Core/Core/PowerPC/Jit64/Jit.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit.h', 'Source/Core/Core/PowerPC/Jit64Common/BlockCache.cpp', 'Source/Core/Core/PowerPC/Jit64Common/BlockCache.h', 'Source/Core/Core/PowerPC/JitArm64/Jit.cpp', 'Source/Core/Core/PowerPC/JitArm64/Jit.h', 'Source/Core/Core/PowerPC/JitArm64/JitArm64Cache.cpp', 'Source/Core/Core/PowerPC/JitArm64/JitArm64Cache.h', 'Source/Core/Core/PowerPC/JitCommon/JitBase.cpp', 'Source/Core/Core/PowerPC/JitCommon/JitBase.h', 'Source/Core/Core/PowerPC/JitCommon/JitCache.cpp', 'Source/Core/Core/PowerPC/JitCommon/JitCache.h', 'Source/Core/Core/PowerPC/JitInterface.cpp', 'Source/Core/Core/PowerPC/PowerPC.cpp', 'Source/UnitTests/Common/CMakeLists.txt', 'Source/UnitTests/Core/StubJit.h'], 'removed': [], 'message': "Jit: Use LazyMemoryRegion-backed bit sets\n\nJitCache has been using a class called ValidBlockBitSet. This commit\nreplaces it with a new class called LazyMemoryRegionBitSet, which works\nsimilarly but is backed by a LazyMemoryRegion, letting us skip\nallocating memory for parts of the bit set that correspond to emulated\nmemory regions where the game isn't storing any code. I have also added\noptimized functions for setting or clearing long runs of bits.\n\nAdditionally, this commit replaces JitBase's three std::unordered_sets\nthat are keeping track of instructions with LazyMemoryRegionBitSets.\nHere the benefit is more speed than memory usage. This improves NBA Live\n2005's menu performance by 1% or so in SuperSamus's testing.", 'url': 'https://github.com/dolphin-emu/dolphin/commit/94070473307b4ded676b97b1a673b496c074cda0', 'hash': '94070473307b4ded676b97b1a673b496c074cda0'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-08-09T18:33:17+02:00', 'username': 'JosJuice'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/MemArena.h'], 'removed': [], 'message': "Common: Reduce LazyMemoryRegion's Windows block size\n\n8 MiB is excessively large for the new use cases, and probably a bit\noverkill for the old use cases too. Let's reduce it to 1 MiB.", 'url': 'https://github.com/dolphin-emu/dolphin/commit/82f7ec53902d805a6f5091f913035f29499c873a', 'hash': '82f7ec53902d805a6f5091f913035f29499c873a'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-08-22T11:22:33+02:00', 'username': 'JosJuice'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Common/Align.h', 'Source/Core/Common/LazyMemoryRegionBitSet.cpp', 'Source/Core/Core/IOS/FS/HostBackend/FS.cpp', 'Source/Core/Core/PowerPC/JitCommon/JitCache.cpp', 'Source/Core/DiscIO/DirectoryBlob.cpp', 'Source/Core/DiscIO/WIABlob.cpp', 'Source/Core/DolphinQt/MenuBar.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKTexture.cpp', 'Source/Core/VideoCommon/Assets/CustomTextureData.cpp'], 'removed': [], 'message': "Common: Add DivideRoundingUp function\n\nMany callers of AlignUp are dividing immediately after aligning. Let's\nadd a helper function for this so callers don't have to specify the\nalignment size twice.", 'url': 'https://github.com/dolphin-emu/dolphin/commit/f93a8a995b6e16625c60303ccabb0ea71e7dbeb2', 'hash': 'f93a8a995b6e16625c60303ccabb0ea71e7dbeb2'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-17T19:14:10+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': ['Source/Core/Common/LazyMemoryRegionBitSet.cpp', 'Source/Core/Common/LazyMemoryRegionBitSet.h', 'Source/UnitTests/Common/LazyMemoryRegionBitSetTest.cpp'], 'modified': ['Source/Core/Common/Align.h', 'Source/Core/Common/CMakeLists.txt', 'Source/Core/Common/MemArena.h', 'Source/Core/Common/MemArenaWin.cpp', 'Source/Core/Core/FifoPlayer/FifoPlayer.cpp', 'Source/Core/Core/IOS/FS/HostBackend/FS.cpp', 'Source/Core/Core/PowerPC/CPUCoreBase.h', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.cpp', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreter.h', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreterBlockCache.cpp', 'Source/Core/Core/PowerPC/CachedInterpreter/CachedInterpreterBlockCache.h', 'Source/Core/Core/PowerPC/Interpreter/Interpreter.cpp', 'Source/Core/Core/PowerPC/Interpreter/Interpreter.h', 'Source/Core/Core/PowerPC/Jit64/Jit.cpp', 'Source/Core/Core/PowerPC/Jit64/Jit.h', 'Source/Core/Core/PowerPC/Jit64Common/BlockCache.cpp', 'Source/Core/Core/PowerPC/Jit64Common/BlockCache.h', 'Source/Core/Core/PowerPC/JitArm64/Jit.cpp', 'Source/Core/Core/PowerPC/JitArm64/Jit.h', 'Source/Core/Core/PowerPC/JitArm64/JitArm64Cache.cpp', 'Source/Core/Core/PowerPC/JitArm64/JitArm64Cache.h', 'Source/Core/Core/PowerPC/JitCommon/JitBase.cpp', 'Source/Core/Core/PowerPC/JitCommon/JitBase.h', 'Source/Core/Core/PowerPC/JitCommon/JitCache.cpp', 'Source/Core/Core/PowerPC/JitCommon/JitCache.h', 'Source/Core/Core/PowerPC/JitInterface.cpp', 'Source/Core/Core/PowerPC/PowerPC.cpp', 'Source/Core/DiscIO/DirectoryBlob.cpp', 'Source/Core/DiscIO/WIABlob.cpp', 'Source/Core/DolphinQt/MenuBar.cpp', 'Source/Core/VideoBackends/Vulkan/VKShader.cpp', 'Source/Core/VideoBackends/Vulkan/VKTexture.cpp', 'Source/Core/VideoCommon/Assets/CustomTextureData.cpp', 'Source/UnitTests/Common/CMakeLists.txt', 'Source/UnitTests/Core/StubJit.h'], 'removed': [], 'message': 'Merge pull request #14804 from JosJuice/jit-set-lazy-memory-region\n\nJit: Use LazyMemoryRegion-backed bit sets', 'url': 'https://github.com/dolphin-emu/dolphin/commit/38d619b07691231f54e6f037fcf30a3b64fdd5a5', 'hash': '38d619b07691231f54e6f037fcf30a3b64fdd5a5'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
2026-10-17T17:12:48.892411 {'source': 'ghhookparser', 'repo': 'dolphin-emu/dolphin', 'pusher': 'JosJuice', 'before_sha': '2282f5f94f011d33b3b431e252d9613d92f6c87c', 'after_sha': '1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928', 'commits': [{'author': {'name': 'Sepalani', 'email': 'sepalani@hotmail.fr', 'date': '2026-02-19T15:36:43+04:00', 'username': 'sepalani'}, 'distinct': False, 'added': [], 'modified': ['Source/Core/Core/HW/DVD/AMMediaboard.cpp'], 'removed': [], 'message': 'AMMediaboard: Change accept non-blocking logic\n\nFix the function name in log messages.\n\nHandle more accept edge cases such as: using closed sockets, valid sockets but not bound/listening.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/44ceefe2ec34203c92b5dddf2d71056359b6fb1a', 'hash': '44ceefe2ec34203c92b5dddf2d71056359b6fb1a'}, {'author': {'name': 'JosJuice', 'email': 'josjuice@gmail.com', 'date': '2026-10-17T19:12:45+02:00', 'username': 'JosJuice'}, 'distinct': True, 'added': [], 'modified': ['Source/Core/Core/HW/DVD/AMMediaboard.cpp'], 'removed': [], 'message': 'Merge pull request #14397 from sepalani/tri-accept\n\nAMMediaboard: Change accept non-blocking logic', 'url': 'https://github.com/dolphin-emu/dolphin/commit/1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928', 'hash': '1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928'}], 'base_ref_name': None, 'ref_name': 'master', 'ref_type': 'heads', 'created': False, 'deleted': False, 'forced': False, 'type': 'gh_push'}
Recent 'internal_log' events
2026-10-25T07:20:25.713138 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T07:20:25.380688 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T07:17:23.151837 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:17:21.565006 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:12:21.564663 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:12:20.045073 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:10:25.377601 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T07:10:25.067298 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T07:07:20.044700 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:07:18.475624 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:02:18.475025 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T07:02:16.704389 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T07:00:25.066929 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T07:00:24.735682 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T06:57:16.703841 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T06:57:15.049539 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T06:52:15.048981 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T06:52:13.351096 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T06:50:24.735230 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
2026-10-25T06:50:24.387739 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'core-developers')", 'type': 'internal_log'}
2026-10-25T06:47:13.349368 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T06:47:11.635803 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T06:42:11.635151 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/trusted-developers', 'dreamsyntax,TryTwo,corwin-mcknight,nickbeth,PatrickFerry,linkmauve,RachelBryk,jloehr,cristian64,adamdmoss,gwicks,jjdelvalle,JordanTheToaster,VampireFlower,unknownbrackets,JosJuice,ShimmerGlass,CrossVR,ligfx,kayru,Tilka,mahdihijazi,mathieui,hdcmeta,Lobsterzelda,Sintendo,Zopolis4,CelestialAmber,hrydgard,mmastrac,neobrain,Sam-Belliveau,Sir-Walrus,JoshuaVandaele,crediar,endrift,AdmiralCurtiss,magcius,Ebola16,spxtr,zopieux,jezze,nullgemm,DacoTaco,iwubcode,spycrab,mitaclaw,malleoz,RisingFog,mbc07,Filoppi,Linkinworm,leoetlino,K0bin,riking,randomstuff,hthh,cscd98,zackhow,marcan,Ziek,CookiePLMonster,delroth,Stevoisiak,SuperSamus,Starsam80,yourWaifu,TellowKrinkle,NanoByte011,LAGonauta,aldelaro5,CasualPokePlayer,tygyh,JMC47,Hydr8gon,CrystalGamma,shonumi,galop1n,Dentomologist,orbea,jordan-woyak,Tinob,OatmealDome,Orphis,lioncash,OrN,bentley,sepalani,moncefmechri,kamiyo,EmptyChaos,Buddybenj,Geotale,Parlane,BhaaLseN,archshift,Phatcat,LPFaint99,rlnilsen,smurf3tte,Linktothepast,noahpistilli,Simonx22,skylersaleh,merryhime,MayImilae,SirMangler,ColinDTaylor,LillyJadeKatrin,comex,magumagu,Pokechu22,hackbar,aroulin,glennricster,mandar1jn,Helios747,Gamer64ytb,tom-pratt,skidau,phire,mrgreywater,mimimi085181,deReeperJosh,meffij,degasus,vladfi1,Techjar,krnlyng,FioraAeterna,rukai,booto')", 'type': 'internal_log'}
2026-10-25T06:42:10.016706 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 20, 'msg': 'Refreshing list of trusted users (from %s/%s)', 'args': "('dolphin-emu', 'trusted-developers')", 'type': 'internal_log'}
2026-10-25T06:40:24.386105 {'source': 'logging', 'level': 'INFO', 'pathname': '/nix/store/801nry43pb7wc0ba2clxq82hhw3q1vnj-central-env/lib/python3.13/site-packages/central/github/authz.py', 'lineno': 29, 'msg': 'New GH %s: %s', 'args': "('dolphin-emu/core-developers', 'degasus,leoetlino,CrossVR,Tilka,Pokechu22,iwubcode,OatmealDome,Dentomologist,jordan-woyak,JosJuice,phire,linkmauve,AdmiralCurtiss')", 'type': 'internal_log'}
Recent 'issue' events
2026-10-24T21:15:34.901809 {'source': 'redmine', 'new': False, 'update': 27, 'issue': 14143, 'title': "Games Can't Start Without Crashing Dolphin", 'author': 'Dentomologist', 'type': 'issue'}
2026-10-24T18:28:54.224107 {'source': 'redmine', 'new': False, 'update': 6, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'JosJuice', 'type': 'issue'}
2026-10-24T08:42:34.709036 {'source': 'redmine', 'new': True, 'update': 0, 'issue': 14169, 'title': 'Having Wii Remote 1/2/3/4 in the Controllers menu set to "Real Wii Remote" makes opening and closing games as well as connecting a Wii Remote take much longer than usual', 'author': 'Nia', 'type': 'issue'}
2026-10-24T02:32:49.117018 {'source': 'redmine', 'new': False, 'update': 2, 'issue': 14168, 'title': 'Issue with Manitoban Time Zone Addition in Microsoft Windows', 'author': 'Billiard26', 'type': 'issue'}
2026-10-24T02:26:45.619599 {'source': 'redmine', 'new': True, 'update': 0, 'issue': 14168, 'title': 'Issue with Manitoban Time Zone Addition in Microsoft Windows', 'author': 'FermentedPeach', 'type': 'issue'}
2026-10-23T22:05:03.797277 {'source': 'redmine', 'new': True, 'update': 0, 'issue': 14167, 'title': 'WII remote will not reconnect after going into sleep mode ', 'author': 'Rjoe', 'type': 'issue'}
2026-10-23T19:51:28.124502 {'source': 'redmine', 'new': False, 'update': 3, 'issue': 12839, 'title': 'Dolphin Updater looks broken at higher Windows Scaling Settings', 'author': 'WiiGamer56473829', 'type': 'issue'}
2026-10-22T16:26:10.311709 {'source': 'redmine', 'new': False, 'update': 5, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'TakahashiAkira', 'type': 'issue'}
2026-10-22T14:43:01.631652 {'source': 'redmine', 'new': False, 'update': 26, 'issue': 14143, 'title': "Games Can't Start Without Crashing Dolphin", 'author': 'TakahashiAkira', 'type': 'issue'}
2026-10-22T04:57:38.617248 {'source': 'redmine', 'new': False, 'update': 4, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'Dentomologist', 'type': 'issue'}
2026-10-21T21:29:31.381766 {'source': 'redmine', 'new': False, 'update': 16, 'issue': 5977, 'title': 'Older Wiimotes (Pre -TR) have broken audio in emulated Bluetooth', 'author': 'Billiard26', 'type': 'issue'}
2026-10-21T21:01:26.151585 {'source': 'redmine', 'new': False, 'update': 15, 'issue': 5977, 'title': 'Older Wiimotes (Pre -TR) have broken audio in emulated Bluetooth', 'author': 'mardy', 'type': 'issue'}
2026-10-21T20:21:58.374940 {'source': 'redmine', 'new': False, 'update': 4, 'issue': 12073, 'title': 'Feature request - Cropping 16:9 letterboxed games', 'author': 'Billiard26', 'type': 'issue'}
2026-10-21T19:46:35.815073 {'source': 'redmine', 'new': False, 'update': 3, 'issue': 12073, 'title': 'Feature request - Cropping 16:9 letterboxed games', 'author': 'WiiGamer56473829', 'type': 'issue'}
2026-10-21T19:16:24.473818 {'source': 'redmine', 'new': False, 'update': 3, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'Billiard26', 'type': 'issue'}
2026-10-21T18:21:57.352709 {'source': 'redmine', 'new': False, 'update': 2, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'tehgooch', 'type': 'issue'}
2026-10-21T16:09:25.241751 {'source': 'redmine', 'new': True, 'update': 0, 'issue': 14166, 'title': 'Crash Launching Any Game When Set To New Time Zone "Pacific Time (British Columbia)"', 'author': 'tehgooch', 'type': 'issue'}
2026-10-19T16:12:10.962205 {'source': 'redmine', 'new': True, 'update': 0, 'issue': 14165, 'title': "Motion sometimes don't recognized in 3 WarioWare Smooth Moves mini-games (spin/rotation - Emulated controllers)", 'author': 'GaussTek', 'type': 'issue'}
2026-10-19T00:51:12.815927 {'source': 'redmine', 'new': False, 'update': 3, 'issue': 14141, 'title': 'Emulator Closes/Crashes If I Do Anything Since Update (Even If I Install a Different Version)', 'author': 'oftheseaisme', 'type': 'issue'}
Recent 'new_dev_version' events
2026-10-24T20:04:29.776886 {'source': 'repomanager', 'hash': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'branch': 'master', 'shortrev': '2609-119', 'author': 'Jordan Woyak', 'message': 'Merge pull request #14940 from jordan-woyak/CoreTimingTest-fix\n\nUnitTests: Fix CoreTiming.SharedSlot test so it can run independently.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'type': 'new_dev_version'}
2026-10-24T18:22:28.219221 {'source': 'repomanager', 'hash': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'branch': 'master', 'shortrev': '2609-117', 'author': 'iwubcode', 'message': 'Merge pull request #14946 from OatmealDome/revert-win-std-chrono\n\nRevert "msvc: use std::chrono for GetLocalTimeSinceJan1970"', 'url': 'https://github.com/dolphin-emu/dolphin/commit/b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'type': 'new_dev_version'}
2026-10-24T12:16:26.358764 {'source': 'repomanager', 'hash': 'c12121f419c40f99eeb65a9039d9fc95be72e94a', 'branch': 'master', 'shortrev': '2609-115', 'author': 'JosJuice', 'message': 'Merge pull request #14917 from jordan-woyak/skylanders-common-aes\n\nSkylanders: Replace mbedtls_aes usage with Common::AES.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/c12121f419c40f99eeb65a9039d9fc95be72e94a', 'type': 'new_dev_version'}
2026-10-22T20:05:27.906534 {'source': 'repomanager', 'hash': 'e1d35f666cc35f6ead55d32ea2679df44d04da72', 'branch': 'master', 'shortrev': '2609-113', 'author': 'Jordan Woyak', 'message': 'Merge pull request #14913 from jordan-woyak/md5\n\nCommon: Introduce MD5Context class and ComputeMD5 function to minimize mbedtls dependence.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/e1d35f666cc35f6ead55d32ea2679df44d04da72', 'type': 'new_dev_version'}
2026-10-22T19:14:51.363992 {'source': 'repomanager', 'hash': '10d958e66bb5d7574166a10f57839a288c5a7c64', 'branch': 'master', 'shortrev': '2609-108', 'author': 'Jordan Woyak', 'message': 'Merge pull request #14942 from Dentomologist/cmake_add_explicit_check_for_minimum_qt_version\n\nCMake: Enforce minimum Qt version 6.2', 'url': 'https://github.com/dolphin-emu/dolphin/commit/10d958e66bb5d7574166a10f57839a288c5a7c64', 'type': 'new_dev_version'}
2026-10-22T17:12:39.717300 {'source': 'repomanager', 'hash': '2c805fee8f232d090c454381bb1b8422242345e1', 'branch': 'master', 'shortrev': '2609-106', 'author': 'JMC47', 'message': 'Merge pull request #14734 from tom-pratt/trigger-game-digest-check\n\nAndroid: Trigger netplay game digest check', 'url': 'https://github.com/dolphin-emu/dolphin/commit/2c805fee8f232d090c454381bb1b8422242345e1', 'type': 'new_dev_version'}
2026-10-19T16:56:25.522321 {'source': 'repomanager', 'hash': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'branch': 'master', 'shortrev': '2609-104', 'author': 'JMC47', 'message': 'Merge pull request #14388 from SuperSamus/jit-branch-follow-explicit\n\nJit: Followed unconditional branches are a property added by the Analyzer, not something to assume', 'url': 'https://github.com/dolphin-emu/dolphin/commit/cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'type': 'new_dev_version'}
2026-10-18T18:26:46.939067 {'source': 'repomanager', 'hash': '1822e3859f061c6f81076c94eb4ba7e6e0a3706c', 'branch': 'master', 'shortrev': '2609-102', 'author': 'Jordan Woyak', 'message': 'Merge pull request #14934 from iwubcode/efb_interface_remove_global\n\nVideoCommon: remove global framebuffer manager from EFBInterface', 'url': 'https://github.com/dolphin-emu/dolphin/commit/1822e3859f061c6f81076c94eb4ba7e6e0a3706c', 'type': 'new_dev_version'}
2026-10-18T12:51:22.655287 {'source': 'repomanager', 'hash': '41460454e9600f909950fddf0abd13a138430162', 'branch': 'master', 'shortrev': '2609-100', 'author': 'JosJuice', 'message': 'Merge pull request #14796 from acts-1631/security/traversal-pending-timeout\n\nTraversal: update pending-packet time on socket timeout', 'url': 'https://github.com/dolphin-emu/dolphin/commit/41460454e9600f909950fddf0abd13a138430162', 'type': 'new_dev_version'}
2026-10-18T10:25:50.493181 {'source': 'repomanager', 'hash': '8c19346fa956c37264751868a8ac4d674bfff6de', 'branch': 'master', 'shortrev': '2609-98', 'author': 'JosJuice', 'message': 'Merge pull request #14621 from jordan-woyak/cached-blob-jthread\n\nDiscIO/CachedBlob: Minor cleanup by replacing std::thread with std::jthread.', 'url': 'https://github.com/dolphin-emu/dolphin/commit/8c19346fa956c37264751868a8ac4d674bfff6de', 'type': 'new_dev_version'}
2026-10-18T10:12:05.349589 {'source': 'repomanager', 'hash': 'b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7', 'branch': 'master', 'shortrev': '2609-94', 'author': 'JosJuice', 'message': 'Merge pull request #14793 from JoshuaVandaele/auto-off-warns\n\nCMake: Automatically disable warnings for Externals', 'url': 'https://github.com/dolphin-emu/dolphin/commit/b869a2ab2035f0ff0c0ca71becb4e33131ebb1b7', 'type': 'new_dev_version'}
2026-10-17T17:14:14.679192 {'source': 'repomanager', 'hash': '38d619b07691231f54e6f037fcf30a3b64fdd5a5', 'branch': 'master', 'shortrev': '2609-92', 'author': 'JosJuice', 'message': 'Merge pull request #14804 from JosJuice/jit-set-lazy-memory-region\n\nJit: Use LazyMemoryRegion-backed bit sets', 'url': 'https://github.com/dolphin-emu/dolphin/commit/38d619b07691231f54e6f037fcf30a3b64fdd5a5', 'type': 'new_dev_version'}
2026-10-17T17:12:50.776242 {'source': 'repomanager', 'hash': '1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928', 'branch': 'master', 'shortrev': '2609-87', 'author': 'JosJuice', 'message': 'Merge pull request #14397 from sepalani/tri-accept\n\nAMMediaboard: Change accept non-blocking logic', 'url': 'https://github.com/dolphin-emu/dolphin/commit/1cf8f6d92c95504b3fa41cdf92e1706cfb0d9928', 'type': 'new_dev_version'}
Recent 'notification' events
2026-10-25T07:19:20.092538 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303b\ufeffrad0\x03 commented on #14903 (ArmCPUDetect: check elf_aux_info() return value in ReadHwCap): \x1f\x0302https://dolp.in/pr14903#issuecomment-6394807069\x03\x1f', 'type': 'notification'}
2026-10-25T07:00:02.698797 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 commented on #14783 (Remove unused includes): \x1f\x0302https://dolp.in/pr14783#issuecomment-6394641608\x03\x1f', 'type': 'notification'}
2026-10-25T06:56:00.508729 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 commented on #14814 ac62f6: \x1f\x0302https://dolp.in/pr14814#discussion_r4369958773\x03\x1f', 'type': 'notification'}
2026-10-25T06:51:01.747840 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 requested a review from JMC47 for pull request #14906: Triforce region flag added to dolphin.ini (\x0306master\x03...\x0306triforce_region\x03): \x1f\x0302https://dolp.in/pr14906\x03\x1f', 'type': 'notification'}
2026-10-25T06:48:31.316660 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 commented on #14948 56cae1: \x1f\x0302https://dolp.in/pr14948#discussion_r4369940585\x03\x1f', 'type': 'notification'}
2026-10-25T06:35:45.797532 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 opened pull request #14952: Common/Thread: Remove some unused things. (\x0306master\x03...\x0306common-thread-remove-unused\x03): \x1f\x0302https://dolp.in/pr14952\x03\x1f', 'type': 'notification'}
2026-10-25T06:35:03.181924 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14950 \x0304failed\x03 on builders [pr-freebsd-x64]: \x1f\x0302https://dolphin.ci/#/builders/11/builds/10815\x03\x1f', 'type': 'notification'}
2026-10-25T06:07:40.977502 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 synchronized pull request #14933: Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests. (\x0306master\x03...\x0306hookable-event-better\x03): \x1f\x0302https://dolp.in/pr14933\x03\x1f', 'type': 'notification'}
2026-10-25T04:00:55.532946 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 opened pull request #14951: Core/TimePlayed: Decouple the TimePlayed tracker thread from CPUManager. (\x0306master\x03...\x0306time-played-cpumanager-decouple\x03): \x1f\x0302https://dolp.in/pr14951\x03\x1f', 'type': 'notification'}
2026-10-25T03:13:39.965177 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303T\ufeffellowKrinkle\x03 commented on pull request #14916 (VideoBackends / VideoCommon: split draw calls into separate commit and render functions): \x1f\x0302https://dolp.in/pr14916#pullrequestreview-5641309571\x03\x1f', 'type': 'notification'}
2026-10-25T01:54:41.017209 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14950 \x0304failed\x03 on builders [pr-freebsd-x64]: \x1f\x0302https://dolphin.ci/#/builders/11/builds/10812\x03\x1f', 'type': 'notification'}
2026-10-25T01:34:21.772988 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14950 \x0304failed\x03 on builders [pr-freebsd-x64]: \x1f\x0302https://dolphin.ci/#/builders/11/builds/10811\x03\x1f', 'type': 'notification'}
2026-10-25T01:28:44.334973 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 synchronized pull request #14950: Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown. (\x0306master\x03...\x0306libusb-context-shutdown-race-fix\x03): \x1f\x0302https://dolp.in/pr14950\x03\x1f', 'type': 'notification'}
2026-10-25T01:18:25.527831 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14950 \x0304failed\x03 on builders [pr-osx-universal]: \x1f\x0302https://dolphin.ci/#/builders/7/builds/10824\x03\x1f', 'type': 'notification'}
2026-10-25T01:12:46.471786 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303j\ufeffordan-woyak\x03 opened pull request #14950: Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown. (\x0306master\x03...\x0306libusb-context-shutdown-race-fix\x03): \x1f\x0302https://dolp.in/pr14950\x03\x1f', 'type': 'notification'}
2026-10-25T00:14:53.737136 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303u\ufeffVSthem\x03 commented on #11462 (Revert "Remove Boot from DVD Backup"): \x1f\x0302https://dolp.in/pr11462#issuecomment-6391293708\x03\x1f', 'type': 'notification'}
2026-10-25T00:07:32.118270 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303Y\ufeffola-cola\x03 commented on #11462 (Revert "Remove Boot from DVD Backup"): \x1f\x0302https://dolp.in/pr11462#issuecomment-6391225682\x03\x1f', 'type': 'notification'}
2026-10-24T23:30:37.875763 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14916 \x0304failed\x03 on builders [pr-win-dbg-x64]: \x1f\x0302https://dolphin.ci/#/builders/31/builds/10812\x03\x1f', 'type': 'notification'}
2026-10-24T23:26:03.363210 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14916 \x0304failed\x03 on builders [pr-win-x64]: \x1f\x0302https://dolphin.ci/#/builders/2/builds/10805\x03\x1f', 'type': 'notification'}
2026-10-24T23:23:46.572227 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14916 \x0304failed\x03 on builders [pr-deb-dbg-x64]: \x1f\x0302https://dolphin.ci/#/builders/1/builds/10803\x03\x1f', 'type': 'notification'}
2026-10-24T23:17:44.676953 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14916 \x0304failed\x03 on builders [pr-osx-universal]: \x1f\x0302https://dolphin.ci/#/builders/7/builds/10822\x03\x1f', 'type': 'notification'}
2026-10-24T23:17:07.360290 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303i\ufeffwubcode\x03 synchronized pull request #14916: VideoBackends / VideoCommon: split draw calls into separate commit and render functions (\x0306master\x03...\x0306vertex_manager_draw_refactor\x03): \x1f\x0302https://dolp.in/pr14916\x03\x1f', 'type': 'notification'}
2026-10-24T23:15:58.798196 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303i\ufeffwubcode\x03 commented on pull request #14916 (VideoBackends / VideoCommon: split draw calls into separate commit and render functions): \x1f\x0302https://dolp.in/pr14916#pullrequestreview-5640548430\x03\x1f', 'type': 'notification'}
2026-10-24T23:11:39.087175 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] \x0303i\ufeffwubcode\x03 synchronized pull request #14916: VideoBackends / VideoCommon: split draw calls into separate commit and render functions (\x0306master\x03...\x0306vertex_manager_draw_refactor\x03): \x1f\x0302https://dolp.in/pr14916\x03\x1f', 'type': 'notification'}
2026-10-24T23:08:43.340558 {'source': 'notifications', 'msg': '[\x1f\x0313dolphin-emu/dolphin\x03\x1f] build for #14101 \x0304failed\x03 on builders [pr-win-dbg-x64]: \x1f\x0302https://dolphin.ci/#/builders/31/builds/10811\x03\x1f', 'type': 'notification'}
Recent 'pull_request_fifoci_status' events
2026-10-25T07:20:57.502491 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'service': 'pr-fifoci-mtl-osx-m1', 'pr': 14952, 'type': 'pull_request_fifoci_status'}
2026-10-25T07:18:59.035693 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'service': 'pr-fifoci-vk-lin-mesa', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T07:10:14.133252 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'service': 'pr-fifoci-mvk-osx-m1', 'pr': 14952, 'type': 'pull_request_fifoci_status'}
2026-10-25T06:57:50.876242 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T06:45:57.079523 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'service': 'pr-fifoci-mtl-osx-m1', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T06:35:01.004282 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'service': 'pr-fifoci-mvk-osx-m1', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:44:41.431047 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14951, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:35:22.007541 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'service': 'pr-fifoci-mtl-osx-m1', 'pr': 14951, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:30:37.187723 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'service': 'pr-fifoci-sw-lin-mesa', 'pr': 14951, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:24:30.706168 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'service': 'pr-fifoci-mvk-osx-m1', 'pr': 14951, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:22:54.446821 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'service': 'pr-fifoci-vk-lin-mesa', 'pr': 14951, 'type': 'pull_request_fifoci_status'}
2026-10-25T04:10:36.745636 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
2026-10-25T03:53:20.427760 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '62fc846755d4692168a26a707c7784e6198f641a', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14916, 'type': 'pull_request_fifoci_status'}
2026-10-25T03:38:03.516280 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '2d3dd15fd95a66bb02c65779c55d64e6de286ad3', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14101, 'type': 'pull_request_fifoci_status'}
2026-10-25T03:22:36.312830 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '786d91da28c31c6431a9f079971acb25eb23c925', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14939, 'type': 'pull_request_fifoci_status'}
2026-10-25T03:08:12.222908 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'ec11c71d24a42ce51152792289fc42f4f9bd34cb', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 13591, 'type': 'pull_request_fifoci_status'}
2026-10-25T02:54:26.914354 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '9e5269fa97ecdeae59c3beecc98b4ee6d161933e', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14949, 'type': 'pull_request_fifoci_status'}
2026-10-25T02:37:52.073019 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'e3063ce496e9e65f3a9f40628f72e0e6e403937c', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14930, 'type': 'pull_request_fifoci_status'}
2026-10-25T02:20:45.903009 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'be2c120316b72eceb0fb050c136f19246cfca5e4', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14933, 'type': 'pull_request_fifoci_status'}
2026-10-25T02:04:32.334282 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'service': 'pr-fifoci-sw-lin-mesa', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
2026-10-25T02:02:17.894666 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'service': 'pr-fifoci-mtl-osx-m1', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
2026-10-25T01:56:31.770711 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'service': 'pr-fifoci-vk-lin-mesa', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
2026-10-25T01:51:26.951969 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'service': 'pr-fifoci-mvk-osx-m1', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
2026-10-25T01:44:24.385959 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'service': 'pr-fifoci-ogl-lin-mesa', 'pr': 14948, 'type': 'pull_request_fifoci_status'}
2026-10-25T01:29:42.913077 {'source': 'buildbot', 'repo': 'dolphin-emu/dolphin', 'hash': '68f8e74036cf535e7552cd43e44f7a981293b4ef', 'service': 'pr-fifoci-vk-lin-mesa', 'pr': 14950, 'type': 'pull_request_fifoci_status'}
Recent 'raw_bb_hook' events
2026-10-25T07:20:56.798178 {'source': 'webserver', 'raw': {'buildid': 194028, 'number': 9165, 'builderid': 21, 'buildrequestid': 194614, 'workerid': 8, 'masterid': 1, 'started_at': 1792912190, 'complete_at': 1792912843, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'buildername': ['pr-fifoci-mtl-osx-m1', 'Builder'], 'builderid': [21, 'Builder'], 'buildnumber': [9165, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'builddir': ['/Users/ci/worker/base/pr-fifoci-mtl-osx-m1', 'Worker'], 'warnings-count': [114, 'WarningCountingShellCommand'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'workername': ['osx-m1', 'Worker'], 'repository': ['', 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'got_revision': ['ca98b3030bcc70e67158ce899a5589aa2ec65d32', 'GitNoBranch']}, 'buildrequest': {'buildrequestid': 194614, 'buildsetid': 43660, 'builderid': 21, 'priority': 0, 'claimed': True, 'claimed_at': 1792912190, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 21, 'name': 'pr-fifoci-mtl-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/21/builds/9165'}, 'type': 'raw_bb_hook'}
2026-10-25T07:19:04.138727 {'source': 'webserver', 'raw': {'buildid': 194029, 'number': 5457, 'builderid': 41, 'buildrequestid': 194612, 'workerid': 5, 'masterid': 1, 'started_at': 1792912738, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repository': ['', 'Build'], 'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'buildername': ['pr-fifoci-vk-lin-mesa', 'Builder'], 'builderid': [41, 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'buildnumber': [5457, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194612, 'buildsetid': 43659, 'builderid': 41, 'priority': 0, 'claimed': True, 'claimed_at': 1792912738, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911260, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43659, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792911260, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194018, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194018, 'number': 10810, 'builderid': 27, 'buildrequestid': 194604, 'workerid': 10, 'masterid': 1, 'started_at': 1792910168, 'complete_at': 1792911260, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 41, 'name': 'pr-fifoci-vk-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/41/builds/5457'}, 'type': 'raw_bb_hook'}
2026-10-25T07:18:58.381781 {'source': 'webserver', 'raw': {'buildid': 194024, 'number': 5456, 'builderid': 41, 'buildrequestid': 194593, 'workerid': 5, 'masterid': 1, 'started_at': 1792911469, 'complete_at': 1792912738, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'builderid': [41, 'Builder'], 'branch': ['refs/pull/14933/head', 'Build'], 'buildername': ['pr-fifoci-vk-lin-mesa', 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['de7769', 'Trigger'], 'pr_id': [14933, 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'buildnumber': [5456, 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'branchname': ['pr-14933', 'Trigger'], 'headrev': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'basedir': ['/var/lib/fifoci-worker/worker', 'Worker'], 'got_revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'GitNoBranch'], 'warnings-count': [2, 'WarningCountingShellCommand'], 'revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Build'], 'builddir': ['/var/lib/fifoci-worker/worker/pr-fifoci-vk-lin-mesa', 'Worker']}, 'buildrequest': {'buildrequestid': 194593, 'buildsetid': 43655, 'builderid': 41, 'priority': 0, 'claimed': True, 'claimed_at': 1792911469, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792909435, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43655, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792909435, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194004, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13113, 'branch': 'refs/pull/14933/head', 'revision': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792908473, 'patch': None}]}, 'parentbuild': {'buildid': 194004, 'number': 10809, 'builderid': 27, 'buildrequestid': 194584, 'workerid': 10, 'masterid': 1, 'started_at': 1792908477, 'complete_at': 1792909435, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 41, 'name': 'pr-fifoci-vk-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/41/builds/5456'}, 'type': 'raw_bb_hook'}
2026-10-25T07:13:28.065120 {'source': 'webserver', 'raw': {'buildid': 194027, 'number': 10818, 'builderid': 31, 'buildrequestid': 194605, 'workerid': 4, 'masterid': 1, 'started_at': 1792912071, 'complete_at': 1792912396, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'buildername': ['pr-win-dbg-x64', 'Builder'], 'builderid': [31, 'Builder'], 'workername': ['windows', 'Worker'], 'buildnumber': [10818, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['c:\\buildbot', 'Worker'], 'builddir': ['c:\\buildbot\\pr-win-dbg-x64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'sln_exists': ['false', 'SetPropertyFromCommand Step'], 'warnings-count': [7, 'WarningCountingShellCommand'], 'build_url': ['https://dl.dolphin-emu.org/prs/63/25/pr-14952-dolphin-latest-dbg-x64.7z', 'SetProperty']}, 'buildrequest': {'buildrequestid': 194605, 'buildsetid': 43658, 'builderid': 31, 'priority': 0, 'claimed': True, 'claimed_at': 1792912071, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 31, 'name': 'pr-win-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/31/builds/10818'}, 'type': 'raw_bb_hook'}
2026-10-25T07:11:07.591771 {'source': 'webserver', 'raw': {'buildid': 194023, 'number': 10809, 'builderid': 1, 'buildrequestid': 194596, 'workerid': 9, 'masterid': 1, 'started_at': 1792911447, 'complete_at': 1792912247, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'pr_id': [14952, 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [1, 'Builder'], 'workername': ['debian', 'Worker'], 'buildnumber': [10809, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-deb-dbg-x64', 'Worker'], 'branchname': ['pr-14952', 'Change'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'buildername': ['pr-deb-dbg-x64', 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [2, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194596, 'buildsetid': 43658, 'builderid': 1, 'priority': 0, 'claimed': True, 'claimed_at': 1792911447, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 1, 'name': 'pr-deb-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/1/builds/10809'}, 'type': 'raw_bb_hook'}
2026-10-25T07:10:13.461854 {'source': 'webserver', 'raw': {'buildid': 194026, 'number': 9163, 'builderid': 19, 'buildrequestid': 194613, 'workerid': 8, 'masterid': 1, 'started_at': 1792911529, 'complete_at': 1792912190, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'builderid': [19, 'Builder'], 'workername': ['osx-m1', 'Worker'], 'buildnumber': [9163, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'builddir': ['/Users/ci/worker/base/pr-fifoci-mvk-osx-m1', 'Worker'], 'got_revision': ['ca98b3030bcc70e67158ce899a5589aa2ec65d32', 'GitNoBranch'], 'warnings-count': [114, 'WarningCountingShellCommand'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'buildername': ['pr-fifoci-mvk-osx-m1', 'Builder'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build']}, 'buildrequest': {'buildrequestid': 194613, 'buildsetid': 43660, 'builderid': 19, 'priority': 0, 'claimed': True, 'claimed_at': 1792911529, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 19, 'name': 'pr-fifoci-mvk-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/19/builds/9163'}, 'type': 'raw_bb_hook'}
2026-10-25T07:10:13.450892 {'source': 'webserver', 'raw': {'buildid': 194028, 'number': 9165, 'builderid': 21, 'buildrequestid': 194614, 'workerid': 8, 'masterid': 1, 'started_at': 1792912190, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'buildername': ['pr-fifoci-mtl-osx-m1', 'Builder'], 'builderid': [21, 'Builder'], 'buildnumber': [9165, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'workername': ['osx-m1', 'Worker'], 'repository': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194614, 'buildsetid': 43660, 'builderid': 21, 'priority': 0, 'claimed': True, 'claimed_at': 1792912190, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 21, 'name': 'pr-fifoci-mtl-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/21/builds/9165'}, 'type': 'raw_bb_hook'}
2026-10-25T07:08:09.325774 {'source': 'webserver', 'raw': {'buildid': 194025, 'number': 10811, 'builderid': 2, 'buildrequestid': 194597, 'workerid': 4, 'masterid': 1, 'started_at': 1792911520, 'complete_at': 1792912071, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'pr_id': [14952, 'Change'], 'buildername': ['pr-win-x64', 'Builder'], 'workername': ['windows', 'Worker'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'shortrev': ['fa108c', 'Change'], 'buildnumber': [10811, 'Build'], 'project': ['', 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'builderid': [2, 'Builder'], 'branch': ['refs/pull/14952/head', 'Build'], 'repository': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['c:\\buildbot', 'Worker'], 'warnings-count': [7, 'WarningCountingShellCommand'], 'build_url': ['https://dl.dolphin-emu.org/prs/c2/c9/pr-14952-dolphin-latest-x64.7z', 'SetProperty'], 'branchname': ['pr-14952', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builddir': ['c:\\buildbot\\pr-win-x64', 'Worker'], 'sln_exists': ['false', 'SetPropertyFromCommand Step']}, 'buildrequest': {'buildrequestid': 194597, 'buildsetid': 43658, 'builderid': 2, 'priority': 0, 'claimed': True, 'claimed_at': 1792911520, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 2, 'name': 'pr-win-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/2/builds/10811'}, 'type': 'raw_bb_hook'}
2026-10-25T07:08:08.340998 {'source': 'webserver', 'raw': {'buildid': 194027, 'number': 10818, 'builderid': 31, 'buildrequestid': 194605, 'workerid': 4, 'masterid': 1, 'started_at': 1792912071, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'buildername': ['pr-win-dbg-x64', 'Builder'], 'builderid': [31, 'Builder'], 'workername': ['windows', 'Worker'], 'buildnumber': [10818, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194605, 'buildsetid': 43658, 'builderid': 31, 'priority': 0, 'claimed': True, 'claimed_at': 1792912071, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 31, 'name': 'pr-win-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/31/builds/10818'}, 'type': 'raw_bb_hook'}
2026-10-25T07:00:21.371057 {'source': 'webserver', 'raw': {'buildid': 194021, 'number': 5958, 'builderid': 43, 'buildrequestid': 194606, 'workerid': 13, 'masterid': 1, 'started_at': 1792910701, 'complete_at': 1792911603, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'shortrev': ['fa108c', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'buildername': ['pr-flatpak-x64', 'Builder'], 'builderid': [43, 'Builder'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'pr_id': [14952, 'Change'], 'workername': ['altair-flatpak', 'Worker'], 'codebase': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'buildnumber': [5958, 'Build'], 'project': ['', 'Build'], 'basedir': ['/var/lib/flatpak-worker/worker', 'Worker'], 'builddir': ['/var/lib/flatpak-worker/worker/pr-flatpak-x64', 'Worker'], 'fm_build_url': ['https://flat-manager.dolphin-emu.org/api/v1/build/13177', 'SetPropertyFromCommand Step']}, 'buildrequest': {'buildrequestid': 194606, 'buildsetid': 43658, 'builderid': 43, 'priority': 0, 'claimed': True, 'claimed_at': 1792910701, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 43, 'name': 'pr-flatpak-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/43/builds/5958'}, 'type': 'raw_bb_hook'}
2026-10-25T06:59:12.862868 {'source': 'webserver', 'raw': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'buildername': ['pr-osx-universal', 'Builder'], 'workername': ['osx-m1', 'Worker'], 'buildnumber': [10828, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [7, 'Builder'], 'repository': ['', 'Build'], 'builddir': ['/Users/ci/worker/base/pr-osx-universal', 'Worker']}, 'buildrequest': {'buildrequestid': 194598, 'buildsetid': 43658, 'builderid': 7, 'priority': 0, 'claimed': True, 'claimed_at': 1792910756, 'claimed_by_masterid': 1, 'complete': True, 'results': 0, 'submitted_at': 1792910158, 'complete_at': 1792911529, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/7/builds/10828'}, 'type': 'raw_bb_hook'}
2026-10-25T06:59:09.765583 {'source': 'webserver', 'raw': {'buildid': 194026, 'number': 9163, 'builderid': 19, 'buildrequestid': 194613, 'workerid': 8, 'masterid': 1, 'started_at': 1792911529, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'branchname': ['pr-14952', 'Trigger'], 'shortrev': ['fa108c', 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'builderid': [19, 'Builder'], 'workername': ['osx-m1', 'Worker'], 'buildnumber': [9163, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Trigger'], 'pr_id': [14952, 'Trigger'], 'buildername': ['pr-fifoci-mvk-osx-m1', 'Builder'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build']}, 'buildrequest': {'buildrequestid': 194613, 'buildsetid': 43660, 'builderid': 19, 'priority': 0, 'claimed': True, 'claimed_at': 1792911529, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792911529, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43660, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792911529, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194022, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': 1792911529, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 19, 'name': 'pr-fifoci-mvk-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/19/builds/9163'}, 'type': 'raw_bb_hook'}
2026-10-25T06:59:04.535443 {'source': 'webserver', 'raw': {'buildid': 194025, 'number': 10811, 'builderid': 2, 'buildrequestid': 194597, 'workerid': 4, 'masterid': 1, 'started_at': 1792911520, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'pr_id': [14952, 'Change'], 'buildername': ['pr-win-x64', 'Builder'], 'workername': ['windows', 'Worker'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'shortrev': ['fa108c', 'Change'], 'buildnumber': [10811, 'Build'], 'project': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'builderid': [2, 'Builder'], 'branch': ['refs/pull/14952/head', 'Build'], 'repository': ['', 'Build'], 'branchname': ['pr-14952', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'scheduler': ['pr', 'Scheduler']}, 'buildrequest': {'buildrequestid': 194597, 'buildsetid': 43658, 'builderid': 2, 'priority': 0, 'claimed': True, 'claimed_at': 1792911520, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 2, 'name': 'pr-win-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/2/builds/10811'}, 'type': 'raw_bb_hook'}
2026-10-25T06:59:03.935289 {'source': 'webserver', 'raw': {'buildid': 194020, 'number': 10809, 'builderid': 13, 'buildrequestid': 194601, 'workerid': 4, 'masterid': 1, 'started_at': 1792910574, 'complete_at': 1792911520, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'buildername': ['pr-win-arm64', 'Builder'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'builddir': ['c:\\buildbot\\pr-win-arm64', 'Worker'], 'sln_exists': ['false', 'SetPropertyFromCommand Step'], 'branch': ['refs/pull/14952/head', 'Build'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'workername': ['windows', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'pr_id': [14952, 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [13, 'Builder'], 'buildnumber': [10809, 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'codebase': ['', 'Build'], 'basedir': ['c:\\buildbot', 'Worker'], 'build_url': ['https://dl.dolphin-emu.org/prs/40/71/pr-14952-dolphin-latest-arm64.7z', 'SetProperty'], 'warnings-count': [7, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194601, 'buildsetid': 43658, 'builderid': 13, 'priority': 0, 'claimed': True, 'claimed_at': 1792910574, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 13, 'name': 'pr-win-arm64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/13/builds/10809'}, 'type': 'raw_bb_hook'}
2026-10-25T06:58:00.266447 {'source': 'webserver', 'raw': {'buildid': 194023, 'number': 10809, 'builderid': 1, 'buildrequestid': 194596, 'workerid': 9, 'masterid': 1, 'started_at': 1792911447, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'pr_id': [14952, 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [1, 'Builder'], 'workername': ['debian', 'Worker'], 'buildnumber': [10809, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'branchname': ['pr-14952', 'Change'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'buildername': ['pr-deb-dbg-x64', 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'repository': ['', 'Build'], 'project': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194596, 'buildsetid': 43658, 'builderid': 1, 'priority': 0, 'claimed': True, 'claimed_at': 1792911447, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 1, 'name': 'pr-deb-dbg-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/1/builds/10809'}, 'type': 'raw_bb_hook'}
2026-10-25T06:58:00.256292 {'source': 'webserver', 'raw': {'buildid': 194019, 'number': 10808, 'builderid': 26, 'buildrequestid': 194603, 'workerid': 9, 'masterid': 1, 'started_at': 1792910411, 'complete_at': 1792911447, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'buildername': ['pr-deb-x64', 'Builder'], 'builderid': [26, 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repository': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'builddir': ['/buildbot/pr-deb-x64', 'Worker'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'branch': ['refs/pull/14952/head', 'Build'], 'pr_id': [14952, 'Change'], 'workername': ['debian', 'Worker'], 'codebase': ['', 'Build'], 'basedir': ['/buildbot', 'Worker'], 'scheduler': ['pr', 'Scheduler'], 'buildnumber': [10808, 'Build'], 'project': ['', 'Build'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [3, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194603, 'buildsetid': 43658, 'builderid': 26, 'priority': 0, 'claimed': True, 'claimed_at': 1792910411, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 26, 'name': 'pr-deb-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/26/builds/10808'}, 'type': 'raw_bb_hook'}
2026-10-25T06:57:50.376736 {'source': 'webserver', 'raw': {'buildid': 194024, 'number': 5456, 'builderid': 41, 'buildrequestid': 194593, 'workerid': 5, 'masterid': 1, 'started_at': 1792911469, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'builderid': [41, 'Builder'], 'branch': ['refs/pull/14933/head', 'Build'], 'buildername': ['pr-fifoci-vk-lin-mesa', 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'codebase': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['de7769', 'Trigger'], 'pr_id': [14933, 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'buildnumber': [5456, 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'branchname': ['pr-14933', 'Trigger'], 'headrev': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Build']}, 'buildrequest': {'buildrequestid': 194593, 'buildsetid': 43655, 'builderid': 41, 'priority': 0, 'claimed': True, 'claimed_at': 1792911469, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792909435, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43655, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792909435, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194004, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13113, 'branch': 'refs/pull/14933/head', 'revision': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792908473, 'patch': None}]}, 'parentbuild': {'buildid': 194004, 'number': 10809, 'builderid': 27, 'buildrequestid': 194584, 'workerid': 10, 'masterid': 1, 'started_at': 1792908477, 'complete_at': 1792909435, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 41, 'name': 'pr-fifoci-vk-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/41/builds/5456'}, 'type': 'raw_bb_hook'}
2026-10-25T06:57:50.159077 {'source': 'webserver', 'raw': {'buildid': 194007, 'number': 9469, 'builderid': 10, 'buildrequestid': 194591, 'workerid': 5, 'masterid': 1, 'started_at': 1792909435, 'complete_at': 1792911469, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14933', 'Trigger'], 'headrev': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Trigger'], 'scheduler': ['pr-fifoci-lin', 'Scheduler'], 'buildername': ['pr-fifoci-ogl-lin-mesa', 'Builder'], 'revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Build'], 'repository': ['', 'Build'], 'basedir': ['/var/lib/fifoci-worker/worker', 'Worker'], 'warnings-count': [2, 'WarningCountingShellCommand'], 'shortrev': ['de7769', 'Trigger'], 'pr_id': [14933, 'Trigger'], 'builderid': [10, 'Builder'], 'workername': ['altair-fifoci', 'Worker'], 'branch': ['refs/pull/14933/head', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'builddir': ['/var/lib/fifoci-worker/worker/pr-fifoci-ogl-lin-mesa', 'Worker'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'buildnumber': [9469, 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'got_revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'GitNoBranch'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change']}, 'buildrequest': {'buildrequestid': 194591, 'buildsetid': 43655, 'builderid': 10, 'priority': 0, 'claimed': True, 'claimed_at': 1792909435, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792909435, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43655, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-lin' triggered this build", 'submitted_at': 1792909435, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194004, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13113, 'branch': 'refs/pull/14933/head', 'revision': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792908473, 'patch': None}]}, 'parentbuild': {'buildid': 194004, 'number': 10809, 'builderid': 27, 'buildrequestid': 194584, 'workerid': 10, 'masterid': 1, 'started_at': 1792908477, 'complete_at': 1792909435, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 10, 'name': 'pr-fifoci-ogl-lin-mesa', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/10/builds/9469'}, 'type': 'raw_bb_hook'}
2026-10-25T06:55:41.602967 {'source': 'webserver', 'raw': {'buildid': 194017, 'number': 62, 'builderid': 49, 'buildrequestid': 194608, 'workerid': 15, 'masterid': 1, 'started_at': 1792910159, 'complete_at': 1792911341, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'branch': ['refs/pull/14952/head', 'Build'], 'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['fa108c', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'pr_id': [14952, 'Change'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'buildername': ['pr-appimage-x64', 'Builder'], 'builderid': [49, 'Builder'], 'workername': ['altair-appimage', 'Worker'], 'buildnumber': [62, 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-appimage-x64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [10, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194608, 'buildsetid': 43658, 'builderid': 49, 'priority': 0, 'claimed': True, 'claimed_at': 1792910159, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 49, 'name': 'pr-appimage-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/49/builds/62'}, 'type': 'raw_bb_hook'}
2026-10-25T06:54:53.500263 {'source': 'webserver', 'raw': {'buildid': 194018, 'number': 10810, 'builderid': 27, 'buildrequestid': 194604, 'workerid': 10, 'masterid': 1, 'started_at': 1792910168, 'complete_at': 1792911260, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'project': ['', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'buildername': ['pr-ubu-x64', 'Builder'], 'buildnumber': [10810, 'Build'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'builderid': [27, 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'branch': ['refs/pull/14952/head', 'Build'], 'workername': ['ubuntu-lts', 'Worker'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-ubu-x64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [2, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194604, 'buildsetid': 43658, 'builderid': 27, 'priority': 0, 'claimed': True, 'claimed_at': 1792910168, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 27, 'name': 'pr-ubu-x64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/27/builds/10810'}, 'type': 'raw_bb_hook'}
2026-10-25T06:54:43.428422 {'source': 'webserver', 'raw': {'buildid': 194016, 'number': 5898, 'builderid': 44, 'buildrequestid': 194607, 'workerid': 14, 'masterid': 1, 'started_at': 1792910159, 'complete_at': 1792911264, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'pr_id': [14952, 'Change'], 'branchname': ['pr-14952', 'Change'], 'buildername': ['pr-flatpak-arm64', 'Builder'], 'builderid': [44, 'Builder'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['fa108c', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'workername': ['deneb-flatpak', 'Worker'], 'buildnumber': [5898, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'basedir': ['/var/lib/flatpak-worker/worker', 'Worker'], 'builddir': ['/var/lib/flatpak-worker/worker/pr-flatpak-arm64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'fm_build_url': ['https://flat-manager.dolphin-emu.org/api/v1/build/13176', 'SetPropertyFromCommand Step']}, 'buildrequest': {'buildrequestid': 194607, 'buildsetid': 43658, 'builderid': 44, 'priority': 0, 'claimed': True, 'claimed_at': 1792910159, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 44, 'name': 'pr-flatpak-arm64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/44/builds/5898'}, 'type': 'raw_bb_hook'}
2026-10-25T06:52:42.707856 {'source': 'webserver', 'raw': {'buildid': 194014, 'number': 10815, 'builderid': 22, 'buildrequestid': 194602, 'workerid': 12, 'masterid': 1, 'started_at': 1792910158, 'complete_at': 1792911130, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'pr_id': [14952, 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [22, 'Builder'], 'shortrev': ['fa108c', 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'workername': ['android', 'Worker'], 'buildnumber': [10815, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'repository': ['', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'buildername': ['pr-android', 'Builder'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-android', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch']}, 'buildrequest': {'buildrequestid': 194602, 'buildsetid': 43658, 'builderid': 22, 'priority': 0, 'claimed': True, 'claimed_at': 1792910158, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 22, 'name': 'pr-android', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/22/builds/10815'}, 'type': 'raw_bb_hook'}
2026-10-25T06:51:24.544042 {'source': 'webserver', 'raw': {'buildid': 194013, 'number': 56, 'builderid': 50, 'buildrequestid': 194609, 'workerid': 16, 'masterid': 1, 'started_at': 1792910158, 'complete_at': 1792911084, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14952', 'Change'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'buildername': ['pr-appimage-arm64', 'Builder'], 'builderid': [50, 'Builder'], 'workername': ['deneb-appimage', 'Worker'], 'buildnumber': [56, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'repository': ['', 'Build'], 'codebase': ['', 'Build'], 'basedir': ['/buildbot', 'Worker'], 'builddir': ['/buildbot/pr-appimage-arm64', 'Worker'], 'got_revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'GitNoBranch'], 'warnings-count': [12, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194609, 'buildsetid': 43658, 'builderid': 50, 'priority': 0, 'claimed': True, 'claimed_at': 1792910158, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 50, 'name': 'pr-appimage-arm64', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/50/builds/56'}, 'type': 'raw_bb_hook'}
2026-10-25T06:46:29.964355 {'source': 'webserver', 'raw': {'buildid': 194022, 'number': 10828, 'builderid': 7, 'buildrequestid': 194598, 'workerid': 8, 'masterid': 1, 'started_at': 1792910756, 'complete_at': None, 'locks_duration_s': 0, 'complete': False, 'state_string': 'starting', 'results': None, 'properties': {'branchname': ['pr-14952', 'Change'], 'shortrev': ['fa108c', 'Change'], 'pr_id': [14952, 'Change'], 'repo': ['dolphin-emu/dolphin', 'Change'], 'buildername': ['pr-osx-universal', 'Builder'], 'workername': ['osx-m1', 'Worker'], 'buildnumber': [10828, 'Build'], 'branch': ['refs/pull/14952/head', 'Build'], 'codebase': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'revision': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Build'], 'headrev': ['fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'Change'], 'scheduler': ['pr', 'Scheduler'], 'builderid': [7, 'Builder'], 'repository': ['', 'Build']}, 'buildrequest': {'buildrequestid': 194598, 'buildsetid': 43658, 'builderid': 7, 'priority': 0, 'claimed': True, 'claimed_at': 1792910756, 'claimed_by_masterid': 1, 'complete': False, 'results': -1, 'submitted_at': 1792910158, 'complete_at': None, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43658, 'external_idstring': None, 'reason': "The AnyBranchScheduler scheduler named 'pr' triggered this build", 'submitted_at': 1792910158, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': None, 'parent_relationship': None, 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13114, 'branch': 'refs/pull/14952/head', 'revision': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792910158, 'patch': None}]}, 'parentbuild': None, 'parentbuilder': None, 'builder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/7/builds/10828'}, 'type': 'raw_bb_hook'}
2026-10-25T06:45:56.324716 {'source': 'webserver', 'raw': {'buildid': 194011, 'number': 9164, 'builderid': 21, 'buildrequestid': 194595, 'workerid': 8, 'masterid': 1, 'started_at': 1792910100, 'complete_at': 1792910756, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {'branchname': ['pr-14933', 'Trigger'], 'pr_id': [14933, 'Trigger'], 'workername': ['osx-m1', 'Worker'], 'branch': ['refs/pull/14933/head', 'Build'], 'revision': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Build'], 'codebase': ['', 'Build'], 'basedir': ['/Users/ci/worker/base', 'Worker'], 'got_revision': ['ca98b3030bcc70e67158ce899a5589aa2ec65d32', 'GitNoBranch'], 'baserev': ['22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'Change'], 'shortrev': ['de7769', 'Trigger'], 'scheduler': ['pr-fifoci-osx', 'Scheduler'], 'buildername': ['pr-fifoci-mtl-osx-m1', 'Builder'], 'builderid': [21, 'Builder'], 'buildnumber': [9164, 'Build'], 'repository': ['', 'Build'], 'project': ['', 'Build'], 'owners': [['Central (on behalf of: jordan-woyak)'], 'Build'], 'builddir': ['/Users/ci/worker/base/pr-fifoci-mtl-osx-m1', 'Worker'], 'headrev': ['de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'Trigger'], 'repo': ['dolphin-emu/dolphin', 'Trigger'], 'warnings-count': [114, 'WarningCountingShellCommand']}, 'buildrequest': {'buildrequestid': 194595, 'buildsetid': 43656, 'builderid': 21, 'priority': 0, 'claimed': True, 'claimed_at': 1792910100, 'claimed_by_masterid': 1, 'complete': True, 'results': 0, 'submitted_at': 1792909440, 'complete_at': 1792910756, 'waited_for': False, 'properties': None}, 'buildset': {'bsid': 43656, 'external_idstring': None, 'reason': "The Triggerable scheduler named 'pr-fifoci-osx' triggered this build", 'submitted_at': 1792909440, 'complete': False, 'complete_at': None, 'results': -1, 'parent_buildid': 194000, 'parent_relationship': 'Triggered from', 'rebuilt_buildid': None, 'sourcestamps': [{'ssid': 13113, 'branch': 'refs/pull/14933/head', 'revision': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'project': '', 'repository': '', 'codebase': '', 'created_at': 1792908473, 'patch': None}]}, 'parentbuild': {'buildid': 194000, 'number': 10827, 'builderid': 7, 'buildrequestid': 194578, 'workerid': 8, 'masterid': 1, 'started_at': 1792908473, 'complete_at': 1792909440, 'locks_duration_s': 0, 'complete': True, 'state_string': 'build successful', 'results': 0, 'properties': {}}, 'parentbuilder': {'builderid': 7, 'name': 'pr-osx-universal', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'builder': {'builderid': 21, 'name': 'pr-fifoci-mtl-osx-m1', 'masterids': [1], 'description': None, 'description_format': None, 'description_html': None, 'projectid': None, 'tags': []}, 'url': 'https://dolphin.ci/#/builders/21/builds/9164'}, 'type': 'raw_bb_hook'}
Recent 'raw_gh_hook' events
2026-10-25T07:19:20.092324 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'id': 5665684674, 'node_id': 'PR_kwDOALCn2M8AAAABGIm2tw', 'number': 14903, 'title': 'ArmCPUDetect: check elf_aux_info() return value in ReadHwCap', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-01T16:37:12Z', 'updated_at': '2026-10-25T07:19:18Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14903', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14903.patch', 'merged_at': None}, 'body': 'Handle failure explicitly instead of relying on the initial value.\r\nNo functional change.', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14903#issuecomment-6394807069', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14903', 'id': 6394807069, 'node_id': 'IC_kwDOALCn2M8AAAABfSkDHQ', 'user': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T07:19:17Z', 'updated_at': '2026-10-25T07:19:17Z', 'body': "> I don't see this making a difference in practice, but sure I guess.\r\n\r\nI was specifically asked to instate the error checking by another developer for the API in general.", 'author_association': 'CONTRIBUTOR', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394807069/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'brad0', 'id': 1129902, 'node_id': 'MDQ6VXNlcjExMjk5MDI=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1129902?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/brad0', 'html_url': 'https://github.com/brad0', 'followers_url': 'https://api.github.com/users/brad0/followers', 'following_url': 'https://api.github.com/users/brad0/following{/other_user}', 'gists_url': 'https://api.github.com/users/brad0/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/brad0/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/brad0/subscriptions', 'organizations_url': 'https://api.github.com/users/brad0/orgs', 'repos_url': 'https://api.github.com/users/brad0/repos', 'events_url': 'https://api.github.com/users/brad0/events{/privacy}', 'received_events_url': 'https://api.github.com/users/brad0/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T07:00:02.698420 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783', 'id': 5039143901, 'node_id': 'PR_kwDOALCn2M75es3u', 'number': 14783, 'title': 'Remove unused includes', 'user': {'login': 'tygyh', 'id': 32486062, 'node_id': 'MDQ6VXNlcjMyNDg2MDYy', 'avatar_url': 'https://avatars.githubusercontent.com/u/32486062?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/tygyh', 'html_url': 'https://github.com/tygyh', 'followers_url': 'https://api.github.com/users/tygyh/followers', 'following_url': 'https://api.github.com/users/tygyh/following{/other_user}', 'gists_url': 'https://api.github.com/users/tygyh/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/tygyh/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/tygyh/subscriptions', 'organizations_url': 'https://api.github.com/users/tygyh/orgs', 'repos_url': 'https://api.github.com/users/tygyh/repos', 'events_url': 'https://api.github.com/users/tygyh/events{/privacy}', 'received_events_url': 'https://api.github.com/users/tygyh/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 2, 'created_at': '2026-08-01T21:36:01Z', 'updated_at': '2026-10-25T06:59:59Z', 'closed_at': None, 'assignee': None, 'author_association': 'CONTRIBUTOR', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14783', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14783.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14783.patch', 'merged_at': None}, 'body': None, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394641608', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14783#issuecomment-6394641608', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14783', 'id': 6394641608, 'node_id': 'IC_kwDOALCn2M8AAAABfSZ8yA', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T06:59:59Z', 'updated_at': '2026-10-25T06:59:59Z', 'body': 'Sorry, this has aged a bit.\r\nCan you please rebase this in case some of the later merged stuff would fail to build with the removed includes.', 'author_association': 'MEMBER', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6394641608/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:59:53Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15715, 'watchers_count': 15715, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15715, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:56:00.505365 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'created', 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773', 'pull_request_review_id': 5641947242, 'id': 4369958773, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHhHdQ', 'diff_hunk': '@@ -91,5 +91,32 @@ C218068C 00000003\n C2220000 EC5100B2\n D0440000 00000000\n \n+[Gecko]\n+$16:9 Aspect Ratio\n+C2018400 00000002\n+1C000004 7C031670\n+60000000 00000000\n+C2018410 00000002\n+1C000004 7C031670\n+60000000 00000000\n+C21804A8 00000002\n+C3A2BCE0 EC441024\n+EC420772 00000000\n+$60 FPS\n+00385AF7 0000003C\n+C2071124 00000005\n+9421FFF0 BF810008\n+3FE08000 3FC04000\n+93DF1550 C01F1550\n+BB810008 38210010\n+60000000 00000000\n+C2073EE8 00000002\n+3D808000 C00C1550\n+60000000 00000000\n+\n [AR_RetroAchievements_Verified]\n $16:9 Widescreen [gamemasterplc]\n+\n+[Gecko_RetroAchievements_Verified]\n+$16:9 Aspect Ratio\n+$60 FPS', 'path': 'Data/Sys/GameSettings/GF7E01.ini', 'commit_id': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'original_commit_id': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Please have a newline character at the end of this file.\nAlso, this PR needs a rebase.', 'created_at': '2026-10-25T06:55:57Z', 'updated_at': '2026-10-25T06:55:57Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14814#discussion_r4369958773', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14814#discussion_r4369958773'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369958773/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 122, 'original_line': 122, 'side': 'RIGHT', 'author_association': 'MEMBER', 'original_position': 32, 'position': 32, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814', 'id': 4275816544, 'node_id': 'PR_kwDOALCn2M7-28hg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14814', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14814.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14814.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814', 'number': 14814, 'state': 'open', 'locked': False, 'title': 'GameSettings + RA Whitelist: Add 60fps and 16:9 Aspect Ratio codes for Star Fox Assault', 'user': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "These are taken directly from Dolphin's Wiki.\r\n\r\nhttps://wiki.dolphin-emu.org/index.php?title=Star_Fox:_Assault\r\n\r\nNA V2.0\r\n$16:9 Aspect Ratio [Ralf & Drflash55] (better results than the current whitelisted one).\r\n\r\n$60 FPS [Drflash55]", 'created_at': '2026-08-14T00:06:21Z', 'updated_at': '2026-08-14T00:06:21Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': None, 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'head': {'label': 'PhobosAnomaly666:starfox-assault-codes', 'ref': 'starfox-assault-codes', 'sha': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'user': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 1308229661, 'node_id': 'R_kgDOTfoAHQ', 'name': 'dolphin', 'full_name': 'PhobosAnomaly666/dolphin', 'private': False, 'owner': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/PhobosAnomaly666/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin', 'forks_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/forks', 'keys_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/events', 'assignees_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/merges', 'archive_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/deployments', 'created_at': '2026-07-22T00:23:38Z', 'updated_at': '2026-08-13T22:20:26Z', 'pushed_at': '2026-08-16T12:20:11Z', 'git_url': 'git://github.com/PhobosAnomaly666/dolphin.git', 'ssh_url': 'git@github.com:PhobosAnomaly666/dolphin.git', 'clone_url': 'https://github.com/PhobosAnomaly666/dolphin.git', 'svn_url': 'https://github.com/PhobosAnomaly666/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 521112, 'stargazers_count': 0, 'watchers_count': 0, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 0, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 0, 'open_issues': 0, 'watchers': 0, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '4ff214cdd26f135251d2266d676ed72dc1c2f8c9', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14814'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ac62f6b970cf94bc0d258eb2c6288b98c84cf991'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:56:00.502503 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5641947242, 'node_id': 'PRR_kwDOALCn2M8AAAABUElIag', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'commit_id': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'state': 'commented', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14814#pullrequestreview-5641947242', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14814#pullrequestreview-5641947242'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814'}}, 'submitted_at': '2026-10-25T06:55:57Z', 'updated_at': '2026-10-25T06:55:57Z', 'author_association': 'MEMBER'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814', 'id': 4275816544, 'node_id': 'PR_kwDOALCn2M7-28hg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14814', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14814.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14814.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814', 'number': 14814, 'state': 'open', 'locked': False, 'title': 'GameSettings + RA Whitelist: Add 60fps and 16:9 Aspect Ratio codes for Star Fox Assault', 'user': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "These are taken directly from Dolphin's Wiki.\r\n\r\nhttps://wiki.dolphin-emu.org/index.php?title=Star_Fox:_Assault\r\n\r\nNA V2.0\r\n$16:9 Aspect Ratio [Ralf & Drflash55] (better results than the current whitelisted one).\r\n\r\n$60 FPS [Drflash55]", 'created_at': '2026-08-14T00:06:21Z', 'updated_at': '2026-08-14T00:06:21Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': None, 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'head': {'label': 'PhobosAnomaly666:starfox-assault-codes', 'ref': 'starfox-assault-codes', 'sha': 'ac62f6b970cf94bc0d258eb2c6288b98c84cf991', 'user': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 1308229661, 'node_id': 'R_kgDOTfoAHQ', 'name': 'dolphin', 'full_name': 'PhobosAnomaly666/dolphin', 'private': False, 'owner': {'login': 'PhobosAnomaly666', 'id': 93089878, 'node_id': 'U_kgDOBYxwVg', 'avatar_url': 'https://avatars.githubusercontent.com/u/93089878?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/PhobosAnomaly666', 'html_url': 'https://github.com/PhobosAnomaly666', 'followers_url': 'https://api.github.com/users/PhobosAnomaly666/followers', 'following_url': 'https://api.github.com/users/PhobosAnomaly666/following{/other_user}', 'gists_url': 'https://api.github.com/users/PhobosAnomaly666/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/PhobosAnomaly666/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/PhobosAnomaly666/subscriptions', 'organizations_url': 'https://api.github.com/users/PhobosAnomaly666/orgs', 'repos_url': 'https://api.github.com/users/PhobosAnomaly666/repos', 'events_url': 'https://api.github.com/users/PhobosAnomaly666/events{/privacy}', 'received_events_url': 'https://api.github.com/users/PhobosAnomaly666/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/PhobosAnomaly666/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin', 'forks_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/forks', 'keys_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/events', 'assignees_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/merges', 'archive_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/PhobosAnomaly666/dolphin/deployments', 'created_at': '2026-07-22T00:23:38Z', 'updated_at': '2026-08-13T22:20:26Z', 'pushed_at': '2026-08-16T12:20:11Z', 'git_url': 'git://github.com/PhobosAnomaly666/dolphin.git', 'ssh_url': 'git@github.com:PhobosAnomaly666/dolphin.git', 'clone_url': 'https://github.com/PhobosAnomaly666/dolphin.git', 'svn_url': 'https://github.com/PhobosAnomaly666/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 521112, 'stargazers_count': 0, 'watchers_count': 0, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 0, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 0, 'open_issues': 0, 'watchers': 0, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '4ff214cdd26f135251d2266d676ed72dc1c2f8c9', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14814'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14814/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14814/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ac62f6b970cf94bc0d258eb2c6288b98c84cf991'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:51:01.747223 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'review_requested', 'number': 14906, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906', 'id': 4716578643, 'node_id': 'PR_kwDOALCn2M8AAAABGSFHUw', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14906', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14906.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14906.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14906', 'number': 14906, 'state': 'open', 'locked': False, 'title': 'Triforce region flag added to dolphin.ini', 'user': {'login': 'pizzzza19', 'id': 183198342, 'node_id': 'U_kgDOCutihg', 'avatar_url': 'https://avatars.githubusercontent.com/u/183198342?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pizzzza19', 'html_url': 'https://github.com/pizzzza19', 'followers_url': 'https://api.github.com/users/pizzzza19/followers', 'following_url': 'https://api.github.com/users/pizzzza19/following{/other_user}', 'gists_url': 'https://api.github.com/users/pizzzza19/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pizzzza19/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pizzzza19/subscriptions', 'organizations_url': 'https://api.github.com/users/pizzzza19/orgs', 'repos_url': 'https://api.github.com/users/pizzzza19/repos', 'events_url': 'https://api.github.com/users/pizzzza19/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pizzzza19/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Since triforce supported build released, region setting always hard coded as USA.\r\n\r\nFor some titles like Virtua Striker, only JPN region can select Japanese team.\r\nSome triforce GDROMs have multiple region roms in one disc.\r\n\r\nunder dolphin.ini, you can add region flag in core section.\r\n```\r\n[Core]\r\n"TriforceRegion = 0"\r\n```\r\n\r\nRegion flags you can choose\r\n```\r\n0: JPN\r\n1: USA\r\n2: EXP\r\n```\r\nThis flag is also hard coded so that you won\'t change setting in the Test menu same as previous builds.\r\n\r\nThis PR powered by claude.', 'created_at': '2026-10-02T12:45:12Z', 'updated_at': '2026-10-25T06:50:59Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '3a39e105d65ea11a90bad9de638108eae7deb8dc', 'assignees': [], 'requested_reviewers': [{'login': 'JMC47', 'id': 6598209, 'node_id': 'MDQ6VXNlcjY1OTgyMDk=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6598209?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JMC47', 'html_url': 'https://github.com/JMC47', 'followers_url': 'https://api.github.com/users/JMC47/followers', 'following_url': 'https://api.github.com/users/JMC47/following{/other_user}', 'gists_url': 'https://api.github.com/users/JMC47/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JMC47/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JMC47/subscriptions', 'organizations_url': 'https://api.github.com/users/JMC47/orgs', 'repos_url': 'https://api.github.com/users/JMC47/repos', 'events_url': 'https://api.github.com/users/JMC47/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JMC47/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14906/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ecb1a7b69d0da4f7c227913156755f3e92a51cfb', 'head': {'label': 'pizzzza19:triforce_region', 'ref': 'triforce_region', 'sha': 'ecb1a7b69d0da4f7c227913156755f3e92a51cfb', 'user': {'login': 'pizzzza19', 'id': 183198342, 'node_id': 'U_kgDOCutihg', 'avatar_url': 'https://avatars.githubusercontent.com/u/183198342?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pizzzza19', 'html_url': 'https://github.com/pizzzza19', 'followers_url': 'https://api.github.com/users/pizzzza19/followers', 'following_url': 'https://api.github.com/users/pizzzza19/following{/other_user}', 'gists_url': 'https://api.github.com/users/pizzzza19/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pizzzza19/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pizzzza19/subscriptions', 'organizations_url': 'https://api.github.com/users/pizzzza19/orgs', 'repos_url': 'https://api.github.com/users/pizzzza19/repos', 'events_url': 'https://api.github.com/users/pizzzza19/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pizzzza19/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 1401534595, 'node_id': 'R_kgDOU4m4gw', 'name': 'dolphin', 'full_name': 'pizzzza19/dolphin', 'private': False, 'owner': {'login': 'pizzzza19', 'id': 183198342, 'node_id': 'U_kgDOCutihg', 'avatar_url': 'https://avatars.githubusercontent.com/u/183198342?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/pizzzza19', 'html_url': 'https://github.com/pizzzza19', 'followers_url': 'https://api.github.com/users/pizzzza19/followers', 'following_url': 'https://api.github.com/users/pizzzza19/following{/other_user}', 'gists_url': 'https://api.github.com/users/pizzzza19/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/pizzzza19/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/pizzzza19/subscriptions', 'organizations_url': 'https://api.github.com/users/pizzzza19/orgs', 'repos_url': 'https://api.github.com/users/pizzzza19/repos', 'events_url': 'https://api.github.com/users/pizzzza19/events{/privacy}', 'received_events_url': 'https://api.github.com/users/pizzzza19/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/pizzzza19/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/pizzzza19/dolphin', 'forks_url': 'https://api.github.com/repos/pizzzza19/dolphin/forks', 'keys_url': 'https://api.github.com/repos/pizzzza19/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/pizzzza19/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/pizzzza19/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/pizzzza19/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/pizzzza19/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/pizzzza19/dolphin/events', 'assignees_url': 'https://api.github.com/repos/pizzzza19/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/pizzzza19/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/pizzzza19/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/pizzzza19/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/pizzzza19/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/pizzzza19/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/pizzzza19/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/pizzzza19/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/pizzzza19/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/pizzzza19/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/pizzzza19/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/pizzzza19/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/pizzzza19/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/pizzzza19/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/pizzzza19/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/pizzzza19/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/pizzzza19/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/pizzzza19/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/pizzzza19/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/pizzzza19/dolphin/merges', 'archive_url': 'https://api.github.com/repos/pizzzza19/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/pizzzza19/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/pizzzza19/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/pizzzza19/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/pizzzza19/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/pizzzza19/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/pizzzza19/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/pizzzza19/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/pizzzza19/dolphin/deployments', 'created_at': '2026-10-02T10:57:40Z', 'updated_at': '2026-10-24T06:19:13Z', 'pushed_at': '2026-10-24T06:18:51Z', 'git_url': 'git://github.com/pizzzza19/dolphin.git', 'ssh_url': 'git@github.com:pizzzza19/dolphin.git', 'clone_url': 'https://github.com/pizzzza19/dolphin.git', 'svn_url': 'https://github.com/pizzzza19/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 518449, 'stargazers_count': 0, 'watchers_count': 0, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 0, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 0, 'open_issues': 0, 'watchers': 0, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '24c80c5a32d9429bcd8e7b0b90d7b61763782009', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14906'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14906'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14906/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14906/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/ecb1a7b69d0da4f7c227913156755f3e92a51cfb'}}, 'author_association': 'NONE', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': True, 'rebaseable': False, 'mergeable_state': 'clean', 'merged_by': None, 'comments': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'commits': 4, 'additions': 33, 'deletions': 7, 'changed_files': 3}, 'requested_reviewer': {'login': 'JMC47', 'id': 6598209, 'node_id': 'MDQ6VXNlcjY1OTgyMDk=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6598209?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JMC47', 'html_url': 'https://github.com/JMC47', 'followers_url': 'https://api.github.com/users/JMC47/followers', 'following_url': 'https://api.github.com/users/JMC47/following{/other_user}', 'gists_url': 'https://api.github.com/users/JMC47/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JMC47/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JMC47/subscriptions', 'organizations_url': 'https://api.github.com/users/JMC47/orgs', 'repos_url': 'https://api.github.com/users/JMC47/repos', 'events_url': 'https://api.github.com/users/JMC47/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JMC47/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:48:31.315869 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'created', 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585', 'pull_request_review_id': 5641908837, 'id': 4369940585, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHgAaQ', 'diff_hunk': '@@ -1,17 +1,19 @@\n function(dolphin_disable_warnings target)\n- get_target_property(target_flags ${target} COMPILE_OPTIONS)\n- set(new_flags)\n- foreach(flag IN LISTS target_flags)\n- # all warning flags start with "/W" or "/w" or "-W" or "-w"\n- if (NOT flag MATCHES "^[-/][Ww]")\n- list(APPEND new_flags "${flag}")\n+ if(MSVC)\n+ # MSVC warns with D9025 if multiple contradicting warning flags co-exist\n+ get_target_property(target_flags ${target} COMPILE_OPTIONS)\n+ if(target_flags)\n+ set(new_flags)\n+ foreach(flag IN LISTS target_flags)\n+ # This should match /external:W0, /Wall, $<IF:$<CONFIG:Debug>,/W0,/W4>, but not $<IF:$<CONFIG:Debug>,/I:C:/Users/will,/I:C:/Workspace2>', 'path': 'CMake/DolphinDisableWarnings.cmake', 'commit_id': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'original_commit_id': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I think this logic would break if one of these `$<IF` clauses included both warning flags and non-warning flags? e.g. `<IF:$<CONFIG:Debug>,/W0,/I:C:/necessary-thing>`\nBut maybe that doesn't happen so much?", 'created_at': '2026-10-25T06:48:28Z', 'updated_at': '2026-10-25T06:48:28Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14948#discussion_r4369940585', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14948#discussion_r4369940585'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369940585/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 8, 'original_line': 8, 'side': 'RIGHT', 'author_association': 'MEMBER', 'original_position': 14, 'position': 14, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948', 'id': 4996924121, 'node_id': 'PR_kwDOALCn2M8AAAABKdcC2Q', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14948', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14948.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14948.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948', 'number': 14948, 'state': 'open', 'locked': False, 'title': 'CMake: Only trim flags on MSVC, be a little more selective of what to remove', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'When disabling warnings, we currently strip all flags that start with the letter W before telling the compiler to not emit warnings, which is unnecessary on all compilers except MSVC that will warn if multiple warning flags are present. Therefore, we now only remove flags on MSVC.\n\nFurthermore, we previously stripped *all flags that start with the letter W* which has caused issues, as reported by @SuperSamus in #14793\n> I think that the problem is that dolphin_disable_warnings is removing important non-warning flags like -Wl.\n\nTherefore, the function now strictly strips known warning flags instead of every flag starting with W.\n\nThe second unrelated commit is (I believe) a pre-existing issue that slipped under the radar because of build cache, which causes clang to pick up system headers and mix them in with our externals. Since this PR changes build flags, this invalidates the cache and reveals the issue.\n\nSupersedes #14945 ', 'created_at': '2026-10-24T16:03:07Z', 'updated_at': '2026-10-24T19:33:45Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '42f74eab538b23487932208af5e34cac3b204089', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'head': {'label': 'JoshuaVandaele:w-flags-fix', 'ref': 'w-flags-fix', 'sha': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 915253252, 'node_id': 'R_kgDONo2oBA', 'name': 'dolphin', 'full_name': 'JoshuaVandaele/dolphin', 'private': False, 'owner': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/JoshuaVandaele/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/JoshuaVandaele/dolphin', 'forks_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/forks', 'keys_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/events', 'assignees_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/merges', 'archive_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/deployments', 'created_at': '2025-01-11T11:19:57Z', 'updated_at': '2026-02-06T11:01:48Z', 'pushed_at': '2026-10-24T21:09:23Z', 'git_url': 'git://github.com/JoshuaVandaele/dolphin.git', 'ssh_url': 'git@github.com:JoshuaVandaele/dolphin.git', 'clone_url': 'https://github.com/JoshuaVandaele/dolphin.git', 'svn_url': 'https://github.com/JoshuaVandaele/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 520303, 'stargazers_count': 1, 'watchers_count': 1, 'language': None, 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 1, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': None, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 1, 'open_issues': 0, 'watchers': 1, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14948'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:48:31.249719 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5641908837, 'node_id': 'PRR_kwDOALCn2M8AAAABUEiyZQ', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'commit_id': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'state': 'commented', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14948#pullrequestreview-5641908837', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14948#pullrequestreview-5641908837'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948'}}, 'submitted_at': '2026-10-25T06:48:28Z', 'updated_at': '2026-10-25T06:48:28Z', 'author_association': 'MEMBER'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948', 'id': 4996924121, 'node_id': 'PR_kwDOALCn2M8AAAABKdcC2Q', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14948', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14948.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14948.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948', 'number': 14948, 'state': 'open', 'locked': False, 'title': 'CMake: Only trim flags on MSVC, be a little more selective of what to remove', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'When disabling warnings, we currently strip all flags that start with the letter W before telling the compiler to not emit warnings, which is unnecessary on all compilers except MSVC that will warn if multiple warning flags are present. Therefore, we now only remove flags on MSVC.\n\nFurthermore, we previously stripped *all flags that start with the letter W* which has caused issues, as reported by @SuperSamus in #14793\n> I think that the problem is that dolphin_disable_warnings is removing important non-warning flags like -Wl.\n\nTherefore, the function now strictly strips known warning flags instead of every flag starting with W.\n\nThe second unrelated commit is (I believe) a pre-existing issue that slipped under the radar because of build cache, which causes clang to pick up system headers and mix them in with our externals. Since this PR changes build flags, this invalidates the cache and reveals the issue.\n\nSupersedes #14945 ', 'created_at': '2026-10-24T16:03:07Z', 'updated_at': '2026-10-24T19:33:45Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '42f74eab538b23487932208af5e34cac3b204089', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'head': {'label': 'JoshuaVandaele:w-flags-fix', 'ref': 'w-flags-fix', 'sha': '56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 915253252, 'node_id': 'R_kgDONo2oBA', 'name': 'dolphin', 'full_name': 'JoshuaVandaele/dolphin', 'private': False, 'owner': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/JoshuaVandaele/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/JoshuaVandaele/dolphin', 'forks_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/forks', 'keys_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/events', 'assignees_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/merges', 'archive_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/JoshuaVandaele/dolphin/deployments', 'created_at': '2025-01-11T11:19:57Z', 'updated_at': '2026-02-06T11:01:48Z', 'pushed_at': '2026-10-24T21:09:23Z', 'git_url': 'git://github.com/JoshuaVandaele/dolphin.git', 'ssh_url': 'git@github.com:JoshuaVandaele/dolphin.git', 'clone_url': 'https://github.com/JoshuaVandaele/dolphin.git', 'svn_url': 'https://github.com/JoshuaVandaele/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 520303, 'stargazers_count': 1, 'watchers_count': 1, 'language': None, 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 1, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': None, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 1, 'open_issues': 0, 'watchers': 1, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': 'b5f580e6f9b5ba442248ac62a25cb4db246aa69c', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14948'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14948/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14948/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/56cae13e30a840ca44b9b1ef3e1a07ca384a3a1f'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:35:45.795071 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'opened', 'number': 14952, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952', 'id': 5002438456, 'node_id': 'PR_kwDOALCn2M8AAAABKisnOA', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14952', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14952.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14952.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14952', 'number': 14952, 'state': 'open', 'locked': False, 'title': 'Common/Thread: Remove some unused things.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'created_at': '2026-10-25T06:35:43Z', 'updated_at': '2026-10-25T06:35:43Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': None, 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14952/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'head': {'label': 'jordan-woyak:common-thread-remove-unused', 'ref': 'common-thread-remove-unused', 'sha': 'fa108cf559250aff9d8d0ec812d5bdebf075b7b0', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 16818408, 'node_id': 'MDEwOlJlcG9zaXRvcnkxNjgxODQwOA==', 'name': 'dolphin', 'full_name': 'jordan-woyak/dolphin', 'private': False, 'owner': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/jordan-woyak/dolphin', 'description': 'Dolphin is a GameCube/Wii emulator, allowing you to play games for these two platforms on PC, with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/jordan-woyak/dolphin', 'forks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/forks', 'keys_url': 'https://api.github.com/repos/jordan-woyak/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/jordan-woyak/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/jordan-woyak/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/events', 'assignees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/jordan-woyak/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/jordan-woyak/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/jordan-woyak/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/jordan-woyak/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/jordan-woyak/dolphin/merges', 'archive_url': 'https://api.github.com/repos/jordan-woyak/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/jordan-woyak/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/jordan-woyak/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/jordan-woyak/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/jordan-woyak/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/jordan-woyak/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/jordan-woyak/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/deployments', 'created_at': '2014-02-13T21:50:38Z', 'updated_at': '2026-06-27T21:22:47Z', 'pushed_at': '2026-10-25T06:35:09Z', 'git_url': 'git://github.com/jordan-woyak/dolphin.git', 'ssh_url': 'git@github.com:jordan-woyak/dolphin.git', 'clone_url': 'https://github.com/jordan-woyak/dolphin.git', 'svn_url': 'https://github.com/jordan-woyak/dolphin', 'homepage': None, 'size': 527880, 'stargazers_count': 5, 'watchers_count': 5, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': False, 'has_pages': False, 'has_discussions': False, 'forks_count': 5, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 2, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 5, 'open_issues': 2, 'watchers': 5, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': True, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14952'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14952'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14952/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14952/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/fa108cf559250aff9d8d0ec812d5bdebf075b7b0'}}, 'author_association': 'MEMBER', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'commits': 2, 'additions': 0, 'deletions': 18, 'changed_files': 2}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 483, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 483, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T06:07:40.976554 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'synchronize', 'number': 14933, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933', 'id': 4879527125, 'node_id': 'PR_kwDOALCn2M8AAAABItes1Q', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14933', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14933.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14933.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14933', 'number': 14933, 'state': 'open', 'locked': False, 'title': ' Common: Rewrite HookableEvent. More features. Better behavioral guarantees. Unit tests.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'In trying to deal with objects with complicated lifetimes I found our `HookableEvent` lacking.\r\n\r\nThere are now more behavior guarantees and possibilities.\r\n- Recursive `Trigger` works.\r\n- Disconnect within `Trigger` works and instantly destructs the callback.\r\n- Register/Connect within `Trigger` works and is *not* invoked until next `Trigger`\r\n- An `EventHook` callback can indirectly hold a `EventHook` to itself.\r\n - keeping itself alive until it wants or until the `HookableEvent` goes out of scope.\r\n\r\nThe existing `HookableEvent` -> `EventHook` system was a one-to-many relationship.\r\nIt made a particular scenario inconvenient:\r\ne.g. Some class produces many objects and wishes to connect events with them, with either the producer or the many objects going out of scope first.\r\n\r\nThe one-to-many relationship required maintaining a list of `EventHook`, manually removing them based on the instance lifetime.\r\n\r\nA new `HookHolder` class is a introduced that can hold many `EventHook`, allowing for a many-to-many relationship.\r\nThe internal container is automatically adjusted as hooks are disconnected.\r\n```cpp\r\n HookableEvent<> event;\r\n HookHolder holder;\r\n \r\n holder.Connect(event, [&] { fmt::print("triggered 1"); });\r\n \r\n WeakEventHook hook = holder.Connect(event, [&] { fmt::print("triggered 2"); });\r\n holder.Disconnect(hook);\r\n```\r\n`HookHolder` creates a system analogous to Qt\'s `connect`.\r\nIn Qt one doesn\'t need to manually maintain a container of "hooks" to keep a `connect` active, you just derive from `QObject`.\r\nSimilarly here, now you can just have one `HookHolder`.\r\n\r\nI\'ve added a bunch of unit tests.\r\n', 'created_at': '2026-10-15T20:38:45Z', 'updated_at': '2026-10-25T06:07:39Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': 'f078bb9703cd132d0c745d3514b6b295e6d84070', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14933/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'head': {'label': 'jordan-woyak:hookable-event-better', 'ref': 'hookable-event-better', 'sha': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 16818408, 'node_id': 'MDEwOlJlcG9zaXRvcnkxNjgxODQwOA==', 'name': 'dolphin', 'full_name': 'jordan-woyak/dolphin', 'private': False, 'owner': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/jordan-woyak/dolphin', 'description': 'Dolphin is a GameCube/Wii emulator, allowing you to play games for these two platforms on PC, with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/jordan-woyak/dolphin', 'forks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/forks', 'keys_url': 'https://api.github.com/repos/jordan-woyak/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/jordan-woyak/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/jordan-woyak/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/events', 'assignees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/jordan-woyak/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/jordan-woyak/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/jordan-woyak/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/jordan-woyak/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/jordan-woyak/dolphin/merges', 'archive_url': 'https://api.github.com/repos/jordan-woyak/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/jordan-woyak/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/jordan-woyak/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/jordan-woyak/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/jordan-woyak/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/jordan-woyak/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/jordan-woyak/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/deployments', 'created_at': '2014-02-13T21:50:38Z', 'updated_at': '2026-06-27T21:22:47Z', 'pushed_at': '2026-10-25T06:07:38Z', 'git_url': 'git://github.com/jordan-woyak/dolphin.git', 'ssh_url': 'git@github.com:jordan-woyak/dolphin.git', 'clone_url': 'https://github.com/jordan-woyak/dolphin.git', 'svn_url': 'https://github.com/jordan-woyak/dolphin', 'homepage': None, 'size': 527880, 'stargazers_count': 5, 'watchers_count': 5, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': False, 'has_pages': False, 'has_discussions': False, 'forks_count': 5, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 2, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 5, 'open_issues': 2, 'watchers': 5, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': True, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15714, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14933'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14933'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14933/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14933/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/de776988b7f306f4b0b8fe8e5568615eb8e0f3dc'}}, 'author_association': 'MEMBER', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 5, 'maintainer_can_modify': True, 'commits': 2, 'additions': 759, 'deletions': 68, 'changed_files': 3}, 'before': 'be2c120316b72eceb0fb050c136f19246cfca5e4', 'after': 'de776988b7f306f4b0b8fe8e5568615eb8e0f3dc', 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T06:05:40Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15714, 'watchers_count': 15714, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15714, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T04:10:38.540029 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'id': 6019504918, 'node_id': 'PR_kwDOALCn2M8AAAABKhCl7g', 'number': 14950, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'open', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 1, 'created_at': '2026-10-25T01:12:44Z', 'updated_at': '2026-10-25T04:10:36Z', 'closed_at': None, 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.patch', 'merged_at': None}, 'body': "The `completed` parameter needs to be supplied to `libusb_handle_events_timeout_completed` to handle the case of `libusb_interrupt_event_handler` firing between iterations.\n\nThis avoids the potential of having to wait for the 5 second timeout on shutdown.\n\nI've also adjusted the timeout to one second where `libusb_interrupt_event_handler` is unavailable.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6393293054', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950#issuecomment-6393293054', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'id': 6393293054, 'node_id': 'IC_kwDOALCn2M8AAAABfRHo_g', 'user': {'login': 'dolphin-ci[bot]', 'id': 59266906, 'node_id': 'MDM6Qm90NTkyNjY5MDY=', 'avatar_url': 'https://avatars.githubusercontent.com/in/49947?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D', 'html_url': 'https://github.com/apps/dolphin-ci', 'followers_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/followers', 'following_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/orgs', 'repos_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/repos', 'events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/received_events', 'type': 'Bot', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T04:10:36Z', 'updated_at': '2026-10-25T04:10:36Z', 'body': '[FifoCI](https://fifo.ci/about/) detected that this change impacts graphical rendering. Here are the [behavior differences](https://fifo.ci/version/b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1/) detected by the system:\n\n<details>\n<summary>Detected differences</summary>\n\n||ogl-lin-mesa|\n|-|-|\n|nes-vc|[❌ fail](https://fifo.ci/compare/16633751-16626983/)|\n</details>\n<sub><sup>automated-fifoci-reporter</sup></sub>', 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6393293054/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': {'id': 49947, 'client_id': 'Iv1.1fcaea7644d8b727', 'slug': 'dolphin-ci', 'node_id': 'MDM6QXBwNDk5NDc=', 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'name': 'Dolphin CI', 'description': 'Continuous Integration setup for [dolphin-emu.org](https://dolphin-emu.org/).', 'external_url': 'https://github.com/dolphin-emu', 'html_url': 'https://github.com/apps/dolphin-ci', 'created_at': '2019-12-26T22:26:07Z', 'updated_at': '2019-12-26T22:33:19Z', 'permissions': {'checks': 'write', 'contents': 'read', 'issues': 'write', 'members': 'read', 'metadata': 'read', 'pull_requests': 'write', 'statuses': 'write'}, 'events': ['check_run', 'commit_comment', 'issue_comment', 'pull_request', 'pull_request_review', 'pull_request_review_comment', 'push']}, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15711, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'dolphin-ci[bot]', 'id': 59266906, 'node_id': 'MDM6Qm90NTkyNjY5MDY=', 'avatar_url': 'https://avatars.githubusercontent.com/in/49947?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D', 'html_url': 'https://github.com/apps/dolphin-ci', 'followers_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/followers', 'following_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/orgs', 'repos_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/repos', 'events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-ci%5Bbot%5D/received_events', 'type': 'Bot', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T04:00:55.532233 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'opened', 'number': 14951, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951', 'id': 5001640510, 'node_id': 'PR_kwDOALCn2M8AAAABKh76Pg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14951', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14951.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14951.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14951', 'number': 14951, 'state': 'open', 'locked': False, 'title': 'Core/TimePlayed: Decouple the TimePlayed tracker thread from CPUManager.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I think the play time tracking functionality was too tightly integrated with CPUManager.\n\nIt's now very separate and uses state change callbacks to start and stop tracking.", 'created_at': '2026-10-25T04:00:52Z', 'updated_at': '2026-10-25T04:00:52Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': None, 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14951/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/a9f62dfba9ea355d7c0762701c748ab30e44284d', 'head': {'label': 'jordan-woyak:time-played-cpumanager-decouple', 'ref': 'time-played-cpumanager-decouple', 'sha': 'a9f62dfba9ea355d7c0762701c748ab30e44284d', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 16818408, 'node_id': 'MDEwOlJlcG9zaXRvcnkxNjgxODQwOA==', 'name': 'dolphin', 'full_name': 'jordan-woyak/dolphin', 'private': False, 'owner': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/jordan-woyak/dolphin', 'description': 'Dolphin is a GameCube/Wii emulator, allowing you to play games for these two platforms on PC, with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/jordan-woyak/dolphin', 'forks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/forks', 'keys_url': 'https://api.github.com/repos/jordan-woyak/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/jordan-woyak/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/jordan-woyak/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/events', 'assignees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/jordan-woyak/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/jordan-woyak/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/jordan-woyak/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/jordan-woyak/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/jordan-woyak/dolphin/merges', 'archive_url': 'https://api.github.com/repos/jordan-woyak/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/jordan-woyak/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/jordan-woyak/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/jordan-woyak/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/jordan-woyak/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/jordan-woyak/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/jordan-woyak/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/deployments', 'created_at': '2014-02-13T21:50:38Z', 'updated_at': '2026-06-27T21:22:47Z', 'pushed_at': '2026-10-25T04:00:36Z', 'git_url': 'git://github.com/jordan-woyak/dolphin.git', 'ssh_url': 'git@github.com:jordan-woyak/dolphin.git', 'clone_url': 'https://github.com/jordan-woyak/dolphin.git', 'svn_url': 'https://github.com/jordan-woyak/dolphin', 'homepage': None, 'size': 527878, 'stargazers_count': 5, 'watchers_count': 5, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': False, 'has_pages': False, 'has_discussions': False, 'forks_count': 5, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 2, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 5, 'open_issues': 2, 'watchers': 5, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': True, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15711, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14951'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14951'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14951/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14951/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/a9f62dfba9ea355d7c0762701c748ab30e44284d'}}, 'author_association': 'MEMBER', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'commits': 1, 'additions': 70, 'deletions': 60, 'changed_files': 5}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 482, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 482, 'watchers': 15711, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T03:13:40.528300 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'created', 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423', 'pull_request_review_id': 5641309571, 'id': 4369488423, 'node_id': 'PRRC_kwDOALCn2M8AAAABBHEaJw', 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'commit_id': '62fc846755d4692168a26a707c7784e6198f641a', 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'user': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "This change by itself is fine, but note that the Metal renderer currently assumes that allocating on the vertex buffer can invalidate all previous allocations, so if you're doing anything that doesn't work with that, you're going to need to make changes.", 'created_at': '2026-10-25T03:13:37Z', 'updated_at': '2026-10-25T03:13:38Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4369488423', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4369488423'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4369488423/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 1069, 'original_line': 1069, 'side': 'RIGHT', 'in_reply_to_id': 4180887289, 'author_association': 'CONTRIBUTOR', 'original_position': 156, 'position': 104, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:17:05Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': 'f01f3b99637496d75d89908d624b355854feb42e', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': '62fc846755d4692168a26a707c7784e6198f641a', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:17:03Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525775, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 481, 'watchers': 15711, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 481, 'watchers': 15711, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T03:13:39.964859 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5641309571, 'node_id': 'PRR_kwDOALCn2M8AAAABUD-Ngw', 'user': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'state': 'commented', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5641309571', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5641309571'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'submitted_at': '2026-10-25T03:13:37Z', 'updated_at': '2026-10-25T03:13:37Z', 'author_association': 'CONTRIBUTOR'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:17:05Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': 'f01f3b99637496d75d89908d624b355854feb42e', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': '62fc846755d4692168a26a707c7784e6198f641a', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:17:03Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525775, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 481, 'watchers': 15711, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-25T02:36:55Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15711, 'watchers_count': 15711, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3351, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3351, 'open_issues': 481, 'watchers': 15711, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'TellowKrinkle', 'id': 3315070, 'node_id': 'MDQ6VXNlcjMzMTUwNzA=', 'avatar_url': 'https://avatars.githubusercontent.com/u/3315070?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/TellowKrinkle', 'html_url': 'https://github.com/TellowKrinkle', 'followers_url': 'https://api.github.com/users/TellowKrinkle/followers', 'following_url': 'https://api.github.com/users/TellowKrinkle/following{/other_user}', 'gists_url': 'https://api.github.com/users/TellowKrinkle/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/TellowKrinkle/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/TellowKrinkle/subscriptions', 'organizations_url': 'https://api.github.com/users/TellowKrinkle/orgs', 'repos_url': 'https://api.github.com/users/TellowKrinkle/repos', 'events_url': 'https://api.github.com/users/TellowKrinkle/events{/privacy}', 'received_events_url': 'https://api.github.com/users/TellowKrinkle/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T01:28:44.333936 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'synchronize', 'number': 14950, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950', 'id': 5000701422, 'node_id': 'PR_kwDOALCn2M8AAAABKhCl7g', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'number': 14950, 'state': 'open', 'locked': False, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "The `completed` parameter needs to be supplied to `libusb_handle_events_timeout_completed` to handle the case of `libusb_interrupt_event_handler` firing between iterations.\n\nThis avoids the potential of having to wait for the 5 second timeout on shutdown.\n\nI've also adjusted the timeout to one second where `libusb_interrupt_event_handler` is unavailable.", 'created_at': '2026-10-25T01:12:44Z', 'updated_at': '2026-10-25T01:28:42Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': 'cf8c038dd50366a398a820d28d920a6df22959d5', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'head': {'label': 'jordan-woyak:libusb-context-shutdown-race-fix', 'ref': 'libusb-context-shutdown-race-fix', 'sha': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 16818408, 'node_id': 'MDEwOlJlcG9zaXRvcnkxNjgxODQwOA==', 'name': 'dolphin', 'full_name': 'jordan-woyak/dolphin', 'private': False, 'owner': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/jordan-woyak/dolphin', 'description': 'Dolphin is a GameCube/Wii emulator, allowing you to play games for these two platforms on PC, with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/jordan-woyak/dolphin', 'forks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/forks', 'keys_url': 'https://api.github.com/repos/jordan-woyak/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/jordan-woyak/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/jordan-woyak/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/events', 'assignees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/jordan-woyak/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/jordan-woyak/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/jordan-woyak/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/jordan-woyak/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/jordan-woyak/dolphin/merges', 'archive_url': 'https://api.github.com/repos/jordan-woyak/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/jordan-woyak/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/jordan-woyak/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/jordan-woyak/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/jordan-woyak/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/jordan-woyak/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/jordan-woyak/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/deployments', 'created_at': '2014-02-13T21:50:38Z', 'updated_at': '2026-06-27T21:22:47Z', 'pushed_at': '2026-10-25T01:28:41Z', 'git_url': 'git://github.com/jordan-woyak/dolphin.git', 'ssh_url': 'git@github.com:jordan-woyak/dolphin.git', 'clone_url': 'https://github.com/jordan-woyak/dolphin.git', 'svn_url': 'https://github.com/jordan-woyak/dolphin', 'homepage': None, 'size': 527877, 'stargazers_count': 5, 'watchers_count': 5, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': False, 'has_pages': False, 'has_discussions': False, 'forks_count': 5, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 2, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 5, 'open_issues': 2, 'watchers': 5, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': True, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14950'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1'}}, 'author_association': 'MEMBER', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'commits': 1, 'additions': 21, 'deletions': 19, 'changed_files': 1}, 'before': '68f8e74036cf535e7552cd43e44f7a981293b4ef', 'after': 'b63c9898fa6a5fe36c2b9be1ca8120af2d9918f1', 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T01:12:46.470661 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'opened', 'number': 14950, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950', 'id': 5000701422, 'node_id': 'PR_kwDOALCn2M8AAAABKhCl7g', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14950', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14950.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950', 'number': 14950, 'state': 'open', 'locked': False, 'title': 'Core/LibusbUtils: Use std::jthread and fix lost interrupt race on shutdown.', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "The `completed` parameter needs to be supplied to `libusb_handle_events_timeout_completed` to handle the case of `libusb_interrupt_event_handler` firing between iterations.\n\nThis avoids the potential of having to wait for the 5 second timeout on shutdown.\n\nI've also adjusted the timeout to one second where `libusb_interrupt_event_handler` is unavailable.", 'created_at': '2026-10-25T01:12:44Z', 'updated_at': '2026-10-25T01:12:44Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': None, 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/68f8e74036cf535e7552cd43e44f7a981293b4ef', 'head': {'label': 'jordan-woyak:libusb-context-shutdown-race-fix', 'ref': 'libusb-context-shutdown-race-fix', 'sha': '68f8e74036cf535e7552cd43e44f7a981293b4ef', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 16818408, 'node_id': 'MDEwOlJlcG9zaXRvcnkxNjgxODQwOA==', 'name': 'dolphin', 'full_name': 'jordan-woyak/dolphin', 'private': False, 'owner': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/jordan-woyak/dolphin', 'description': 'Dolphin is a GameCube/Wii emulator, allowing you to play games for these two platforms on PC, with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/jordan-woyak/dolphin', 'forks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/forks', 'keys_url': 'https://api.github.com/repos/jordan-woyak/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/jordan-woyak/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/jordan-woyak/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/jordan-woyak/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/jordan-woyak/dolphin/events', 'assignees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/jordan-woyak/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/jordan-woyak/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/jordan-woyak/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/jordan-woyak/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/jordan-woyak/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/jordan-woyak/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/jordan-woyak/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/jordan-woyak/dolphin/merges', 'archive_url': 'https://api.github.com/repos/jordan-woyak/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/jordan-woyak/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/jordan-woyak/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/jordan-woyak/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/jordan-woyak/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/jordan-woyak/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/jordan-woyak/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/jordan-woyak/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/jordan-woyak/dolphin/deployments', 'created_at': '2014-02-13T21:50:38Z', 'updated_at': '2026-06-27T21:22:47Z', 'pushed_at': '2026-10-25T01:06:47Z', 'git_url': 'git://github.com/jordan-woyak/dolphin.git', 'ssh_url': 'git@github.com:jordan-woyak/dolphin.git', 'clone_url': 'https://github.com/jordan-woyak/dolphin.git', 'svn_url': 'https://github.com/jordan-woyak/dolphin', 'homepage': None, 'size': 527877, 'stargazers_count': 5, 'watchers_count': 5, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': False, 'has_pages': False, 'has_discussions': False, 'forks_count': 5, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 2, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 5, 'open_issues': 2, 'watchers': 5, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': True, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14950'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14950/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14950/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/68f8e74036cf535e7552cd43e44f7a981293b4ef'}}, 'author_association': 'MEMBER', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 0, 'maintainer_can_modify': True, 'commits': 1, 'additions': 20, 'deletions': 19, 'changed_files': 1}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 481, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 481, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T00:14:53.736863 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'id': 1548120621, 'node_id': 'PR_kwDOALCn2M5IEdi3', 'number': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 44, 'created_at': '2023-01-18T21:16:20Z', 'updated_at': '2026-10-25T00:14:52Z', 'closed_at': '2023-03-13T19:47:46Z', 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/11462', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.patch', 'merged_at': None}, 'body': "This reverts PR #11456.\r\n\r\nThe ability to boot DVD backups is in my experience as a maintainer of DiscIO really not a maintenance burden at all, since it's very compartmentalized. I had assumed that few people would be disappointed about this feature going away, but we ended up receiving disappointed comments on GitHub from three different people not long after the removal was merged, which is quite a lot. Therefore I would like to bring back this feature.\r\n\r\nI do agree with the argument that nobody who's maintaining Dolphin is testing this feature. But since it seems like there is a vocal minority actually using this feature, I'd say let's keep the feature until it actually breaks or actually becomes a maintenance burden.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/reactions', 'total_count': 4, '+1': 4, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391293708', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391293708', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'id': 6391293708, 'node_id': 'IC_kwDOALCn2M8AAAABfPNnDA', 'user': {'login': 'uVSthem', 'id': 1913166, 'node_id': 'MDQ6VXNlcjE5MTMxNjY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1913166?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/uVSthem', 'html_url': 'https://github.com/uVSthem', 'followers_url': 'https://api.github.com/users/uVSthem/followers', 'following_url': 'https://api.github.com/users/uVSthem/following{/other_user}', 'gists_url': 'https://api.github.com/users/uVSthem/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/uVSthem/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/uVSthem/subscriptions', 'organizations_url': 'https://api.github.com/users/uVSthem/orgs', 'repos_url': 'https://api.github.com/users/uVSthem/repos', 'events_url': 'https://api.github.com/users/uVSthem/events{/privacy}', 'received_events_url': 'https://api.github.com/users/uVSthem/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T00:14:51Z', 'updated_at': '2026-10-25T00:14:51Z', 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nI am willing to test if that is helpful. I use to run back-up discs in Dolphin all the time. If testing with back-up discs in an unflashed drive is helpful at all, let me know.", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391293708/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'uVSthem', 'id': 1913166, 'node_id': 'MDQ6VXNlcjE5MTMxNjY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1913166?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/uVSthem', 'html_url': 'https://github.com/uVSthem', 'followers_url': 'https://api.github.com/users/uVSthem/followers', 'following_url': 'https://api.github.com/users/uVSthem/following{/other_user}', 'gists_url': 'https://api.github.com/users/uVSthem/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/uVSthem/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/uVSthem/subscriptions', 'organizations_url': 'https://api.github.com/users/uVSthem/orgs', 'repos_url': 'https://api.github.com/users/uVSthem/repos', 'events_url': 'https://api.github.com/users/uVSthem/events{/privacy}', 'received_events_url': 'https://api.github.com/users/uVSthem/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-25T00:07:32.117981 {'source': 'webserver', 'gh_type': 'issue_comment', 'raw': {'action': 'created', 'issue': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'repository_url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/labels{/name}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/comments', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/events', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'id': 1548120621, 'node_id': 'PR_kwDOALCn2M5IEdi3', 'number': 11462, 'title': 'Revert "Remove Boot from DVD Backup"', 'user': {'login': 'JosJuice', 'id': 6716818, 'node_id': 'MDQ6VXNlcjY3MTY4MTg=', 'avatar_url': 'https://avatars.githubusercontent.com/u/6716818?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JosJuice', 'html_url': 'https://github.com/JosJuice', 'followers_url': 'https://api.github.com/users/JosJuice/followers', 'following_url': 'https://api.github.com/users/JosJuice/following{/other_user}', 'gists_url': 'https://api.github.com/users/JosJuice/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JosJuice/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JosJuice/subscriptions', 'organizations_url': 'https://api.github.com/users/JosJuice/orgs', 'repos_url': 'https://api.github.com/users/JosJuice/repos', 'events_url': 'https://api.github.com/users/JosJuice/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JosJuice/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'labels': [], 'state': 'closed', 'locked': False, 'assignees': [], 'milestone': None, 'comments': 43, 'created_at': '2023-01-18T21:16:20Z', 'updated_at': '2026-10-25T00:07:30Z', 'closed_at': '2023-03-13T19:47:46Z', 'assignee': None, 'author_association': 'MEMBER', 'issue_field_values': [], 'type': None, 'active_lock_reason': None, 'draft': False, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/11462', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/11462.patch', 'merged_at': None}, 'body': "This reverts PR #11456.\r\n\r\nThe ability to boot DVD backups is in my experience as a maintainer of DiscIO really not a maintenance burden at all, since it's very compartmentalized. I had assumed that few people would be disappointed about this feature going away, but we ended up receiving disappointed comments on GitHub from three different people not long after the removal was merged, which is quite a lot. Therefore I would like to bring back this feature.\r\n\r\nI do agree with the argument that nobody who's maintaining Dolphin is testing this feature. But since it seems like there is a vocal minority actually using this feature, I'd say let's keep the feature until it actually breaks or actually becomes a maintenance burden.", 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/reactions', 'total_count': 4, '+1': 4, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'timeline_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462/timeline', 'performed_via_github_app': None, 'state_reason': None}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391225682', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/11462#issuecomment-6391225682', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/11462', 'id': 6391225682, 'node_id': 'IC_kwDOALCn2M8AAAABfPJdUg', 'user': {'login': 'Yola-cola', 'id': 53379032, 'node_id': 'MDQ6VXNlcjUzMzc5MDMy', 'avatar_url': 'https://avatars.githubusercontent.com/u/53379032?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Yola-cola', 'html_url': 'https://github.com/Yola-cola', 'followers_url': 'https://api.github.com/users/Yola-cola/followers', 'following_url': 'https://api.github.com/users/Yola-cola/following{/other_user}', 'gists_url': 'https://api.github.com/users/Yola-cola/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Yola-cola/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Yola-cola/subscriptions', 'organizations_url': 'https://api.github.com/users/Yola-cola/orgs', 'repos_url': 'https://api.github.com/users/Yola-cola/repos', 'events_url': 'https://api.github.com/users/Yola-cola/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Yola-cola/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'created_at': '2026-10-25T00:07:30Z', 'updated_at': '2026-10-25T00:07:30Z', 'body': "> > Any progress?\r\n> \r\n> I currently have this feature working on a local build, now tidying everything up. I really don't want to fix a date to avoid creating expectations, but if everything goes well, a PR should be published by the end of this month...\r\n\r\nDo you need any help with it?", 'author_association': 'NONE', 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments/6391225682/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'performed_via_github_app': None, 'minimized': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'Yola-cola', 'id': 53379032, 'node_id': 'MDQ6VXNlcjUzMzc5MDMy', 'avatar_url': 'https://avatars.githubusercontent.com/u/53379032?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/Yola-cola', 'html_url': 'https://github.com/Yola-cola', 'followers_url': 'https://api.github.com/users/Yola-cola/followers', 'following_url': 'https://api.github.com/users/Yola-cola/following{/other_user}', 'gists_url': 'https://api.github.com/users/Yola-cola/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/Yola-cola/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/Yola-cola/subscriptions', 'organizations_url': 'https://api.github.com/users/Yola-cola/orgs', 'repos_url': 'https://api.github.com/users/Yola-cola/repos', 'events_url': 'https://api.github.com/users/Yola-cola/events{/privacy}', 'received_events_url': 'https://api.github.com/users/Yola-cola/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T23:17:07.357619 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'synchronize', 'number': 14916, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:17:05Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '0d89ff3513ddf4225555042632a8f36b19dca61a', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': '62fc846755d4692168a26a707c7784e6198f641a', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:17:03Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/62fc846755d4692168a26a707c7784e6198f641a'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 8, 'maintainer_can_modify': True, 'commits': 1, 'additions': 122, 'deletions': 20, 'changed_files': 12}, 'before': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'after': '62fc846755d4692168a26a707c7784e6198f641a', 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T23:15:58.977904 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'created', 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741', 'pull_request_review_id': 5640548430, 'id': 4368896741, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGgS5Q', 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'commit_id': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I split out the binding per backend, it turns out with a separate change I will need the ability to bind the draw independently.\r\n\r\nMetal is Metal. Tellow or someone with the ability to test/compile mac stuff will likely have to make changes to support my feature if/when it lands as the current change won't work for it.", 'created_at': '2026-10-24T23:15:56Z', 'updated_at': '2026-10-24T23:15:57Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368896741', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368896741'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368896741/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 1069, 'original_line': 1069, 'side': 'RIGHT', 'in_reply_to_id': 4180887289, 'author_association': 'CONTRIBUTOR', 'original_position': 156, 'position': 104, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:11:37Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '0d89ff3513ddf4225555042632a8f36b19dca61a', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:11:35Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T23:15:58.797784 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5640548430, 'node_id': 'PRR_kwDOALCn2M8AAAABUDPwTg', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'state': 'commented', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640548430', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640548430'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'submitted_at': '2026-10-24T23:15:56Z', 'updated_at': '2026-10-24T23:15:56Z', 'author_association': 'CONTRIBUTOR'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:11:37Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '0d89ff3513ddf4225555042632a8f36b19dca61a', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:11:35Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T23:11:39.086188 {'source': 'webserver', 'gh_type': 'pull_request', 'raw': {'action': 'synchronize', 'number': 14916, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T23:11:37Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '150819333ccd89fbe3cd6a4966e33909722d8f67', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-24T23:11:35Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '22b581c670d84e60d11c1b02d38e1c7789ae2dfa', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/b11980be86d8190c13f6eb3080ebfa3439f2cced'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None, 'merged': False, 'mergeable': None, 'rebaseable': None, 'mergeable_state': 'unknown', 'merged_by': None, 'comments': 0, 'review_comments': 7, 'maintainer_can_modify': True, 'commits': 1, 'additions': 123, 'deletions': 20, 'changed_files': 12}, 'before': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'after': 'b11980be86d8190c13f6eb3080ebfa3439f2cced', 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T22:05:41Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15710, 'watchers_count': 15710, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15710, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T21:45:02.981276 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'edited', 'changes': {'body': {'from': "I still feel like the exposed parameter is weird but I really don't know enough about the graphics code to understand the implications of having VertexManager internally store the stride value. Does @TellowKrinkle think it's fine? :P"}}, 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146', 'pull_request_review_id': 5640145686, 'id': 4368624146, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGPqEg', 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I still feel like the exposed parameter is weird but I really don't know enough about the graphics code to understand the implications of having VertexManager internally store the stride value. Does @TellowKrinkle think it's fine as-is? :P", 'created_at': '2026-10-24T21:44:46Z', 'updated_at': '2026-10-24T21:45:01Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 1069, 'original_line': 1069, 'side': 'RIGHT', 'in_reply_to_id': 4180887289, 'author_association': 'MEMBER', 'original_position': 156, 'position': 104, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T21:44:47Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '150819333ccd89fbe3cd6a4966e33909722d8f67', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-16T06:04:51Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '1ab733dd5ccb38108c97a76b1f79802683e36049', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T21:44:56.155424 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5640145686, 'node_id': 'PRR_kwDOALCn2M8AAAABUC3LFg', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': None, 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'state': 'commented', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640145686', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#pullrequestreview-5640145686'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'submitted_at': '2026-10-24T21:44:47Z', 'updated_at': '2026-10-24T21:44:47Z', 'author_association': 'MEMBER'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T20:15:11Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '150819333ccd89fbe3cd6a4966e33909722d8f67', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-16T06:04:51Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '1ab733dd5ccb38108c97a76b1f79802683e36049', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T21:44:49.062863 {'source': 'webserver', 'gh_type': 'pull_request_review_comment', 'raw': {'action': 'created', 'comment': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146', 'pull_request_review_id': 5640145686, 'id': 4368624146, 'node_id': 'PRRC_kwDOALCn2M8AAAABBGPqEg', 'diff_hunk': '@@ -1048,38 +1035,54 @@ void VertexManagerBase::OnEndFrame()\n InvalidatePipelineObject();\n }\n \n-void VertexManagerBase::NotifyCustomShaderCacheOfHostChange(const ShaderHostConfig& host_config)\n+void VertexManagerBase::ProcessEmulatedMesh(\n+ PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n+ const AbstractPipeline* pipeline, std::span<const SubmittedSampledTexture> sampled_textures)\n {\n- m_custom_shader_cache->SetHostConfig(host_config);\n- m_custom_shader_cache->Reload();\n+ geometry_shader_manager.SetConstants(m_current_primitive_type);\n+ pixel_shader_manager.SetConstants();\n+\n+ const u32 vertex_stride = VertexLoaderManager::GetCurrentVertexFormat()->GetVertexStride();\n+ const u32 index_size = m_index_generator.GetIndexLen();\n+\n+ u32 base_vertex, base_index;\n+ CommitBuffer(m_index_generator.GetNumVerts(), vertex_stride, index_size, &base_vertex,\n+ &base_index);\n+\n+ SubmittedDrawCallData draw_call_data;\n+ draw_call_data.pipeline = pipeline;\n+ draw_call_data.frame_buffer = g_gfx->GetCurrentFramebuffer();\n+ draw_call_data.base_index = base_index;\n+ draw_call_data.base_vertex = base_vertex;\n+ draw_call_data.index_size = index_size;\n+ draw_call_data.vertex_stride = vertex_stride;\n+ draw_call_data.primitive_type = m_current_primitive_type;\n+ for (const SubmittedSampledTexture& texture : sampled_textures)\n+ draw_call_data.textures.emplace_back(texture);\n+\n+ DrawSubmittedDrawData(g_framebuffer_manager.get(), draw_call_data);\n }\n \n-void VertexManagerBase::RenderDrawCall(\n- PixelShaderManager& pixel_shader_manager, GeometryShaderManager& geometry_shader_manager,\n- const CustomPixelShaderContents& custom_pixel_shader_contents,\n- std::span<u8> custom_pixel_shader_uniforms, PrimitiveType primitive_type,\n- const AbstractPipeline* current_pipeline)\n+void VertexManagerBase::DrawSubmittedDrawData(FramebufferManager* /*framebuffer_manager*/,\n+ const SubmittedDrawCallData& draw_call_data)\n {\n+ BindCommittedBuffer(draw_call_data.vertex_stride);', 'path': 'Source/Core/VideoCommon/VertexManagerBase.cpp', 'commit_id': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'original_commit_id': 'f249c9cbff67f60a5ca30cc2a3576a07cf232ea8', 'user': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': "I still feel like the exposed parameter is weird but I really don't know enough about the graphics code to understand the implications of having VertexManager internally store the stride value. Does @TellowKrinkle think it's fine? :P", 'created_at': '2026-10-24T21:44:46Z', 'updated_at': '2026-10-24T21:44:47Z', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916#discussion_r4368624146'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}}, 'reactions': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments/4368624146/reactions', 'total_count': 0, '+1': 0, '-1': 0, 'laugh': 0, 'hooray': 0, 'confused': 0, 'heart': 0, 'rocket': 0, 'eyes': 0}, 'start_line': None, 'original_start_line': None, 'start_side': None, 'line': 1069, 'original_line': 1069, 'side': 'RIGHT', 'in_reply_to_id': 4180887289, 'author_association': 'MEMBER', 'original_position': 156, 'position': 104, 'subject_type': 'line'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916', 'id': 4739030218, 'node_id': 'PR_kwDOALCn2M8AAAABGnfcyg', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14916', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14916.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916', 'number': 14916, 'state': 'open', 'locked': False, 'title': 'VideoBackends / VideoCommon: split draw calls into separate commit and render functions', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'Late last year I started working on a new feature that required Dolphin to think about how it renders in a different way. In order to prepare for that, I will be creating some PRs that restructure or refactor our existing code.\r\n\r\nThis PR refactors VertexManagerBase so that the drawing logic is split into distinct steps: a commit step where the mesh gets committed to the GPU and a draw step where the mesh gets drawn. Today this is done in one call but in the future these will be distinct paths. ~~This builds on #14908 , please look at the second commit.~~\r\n\r\nFunctionality should not change with these PRs. I did some mild testing but fifo ci should hopefully confirm if any changes slipped through.', 'created_at': '2026-10-05T01:17:38Z', 'updated_at': '2026-10-24T20:15:11Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': '150819333ccd89fbe3cd6a4966e33909722d8f67', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'head': {'label': 'iwubcode:vertex_manager_draw_refactor', 'ref': 'vertex_manager_draw_refactor', 'sha': 'f73d74c913d5d4d355e4d30ced3468d6fbd95aaf', 'user': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 77596353, 'node_id': 'MDEwOlJlcG9zaXRvcnk3NzU5NjM1Mw==', 'name': 'dolphin', 'full_name': 'iwubcode/dolphin', 'private': False, 'owner': {'login': 'iwubcode', 'id': 15224722, 'node_id': 'MDQ6VXNlcjE1MjI0NzIy', 'avatar_url': 'https://avatars.githubusercontent.com/u/15224722?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/iwubcode', 'html_url': 'https://github.com/iwubcode', 'followers_url': 'https://api.github.com/users/iwubcode/followers', 'following_url': 'https://api.github.com/users/iwubcode/following{/other_user}', 'gists_url': 'https://api.github.com/users/iwubcode/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/iwubcode/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/iwubcode/subscriptions', 'organizations_url': 'https://api.github.com/users/iwubcode/orgs', 'repos_url': 'https://api.github.com/users/iwubcode/repos', 'events_url': 'https://api.github.com/users/iwubcode/events{/privacy}', 'received_events_url': 'https://api.github.com/users/iwubcode/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/iwubcode/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/iwubcode/dolphin', 'forks_url': 'https://api.github.com/repos/iwubcode/dolphin/forks', 'keys_url': 'https://api.github.com/repos/iwubcode/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/iwubcode/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/iwubcode/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/iwubcode/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/iwubcode/dolphin/events', 'assignees_url': 'https://api.github.com/repos/iwubcode/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/iwubcode/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/iwubcode/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/iwubcode/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/iwubcode/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/iwubcode/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/iwubcode/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/iwubcode/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/iwubcode/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/iwubcode/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/iwubcode/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/iwubcode/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/iwubcode/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/iwubcode/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/iwubcode/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/iwubcode/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/iwubcode/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/iwubcode/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/iwubcode/dolphin/merges', 'archive_url': 'https://api.github.com/repos/iwubcode/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/iwubcode/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/iwubcode/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/iwubcode/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/iwubcode/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/iwubcode/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/iwubcode/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/iwubcode/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/iwubcode/dolphin/deployments', 'created_at': '2016-12-29T08:26:39Z', 'updated_at': '2026-10-16T05:11:46Z', 'pushed_at': '2026-10-16T06:04:51Z', 'git_url': 'git://github.com/iwubcode/dolphin.git', 'ssh_url': 'git@github.com:iwubcode/dolphin.git', 'clone_url': 'https://github.com/iwubcode/dolphin.git', 'svn_url': 'https://github.com/iwubcode/dolphin', 'homepage': 'https://dolphin-emu.org/', 'size': 525718, 'stargazers_count': 2, 'watchers_count': 2, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 4, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 1, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 4, 'open_issues': 1, 'watchers': 2, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': '1ab733dd5ccb38108c97a76b1f79802683e36049', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14916'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14916/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14916/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/f73d74c913d5d4d355e4d30ced3468d6fbd95aaf'}}, 'author_association': 'CONTRIBUTOR', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'jordan-woyak', 'id': 1768214, 'node_id': 'MDQ6VXNlcjE3NjgyMTQ=', 'avatar_url': 'https://avatars.githubusercontent.com/u/1768214?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/jordan-woyak', 'html_url': 'https://github.com/jordan-woyak', 'followers_url': 'https://api.github.com/users/jordan-woyak/followers', 'following_url': 'https://api.github.com/users/jordan-woyak/following{/other_user}', 'gists_url': 'https://api.github.com/users/jordan-woyak/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/jordan-woyak/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/jordan-woyak/subscriptions', 'organizations_url': 'https://api.github.com/users/jordan-woyak/orgs', 'repos_url': 'https://api.github.com/users/jordan-woyak/repos', 'events_url': 'https://api.github.com/users/jordan-woyak/events{/privacy}', 'received_events_url': 'https://api.github.com/users/jordan-woyak/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}
2026-10-24T21:40:00.576446 {'source': 'webserver', 'gh_type': 'pull_request_review', 'raw': {'action': 'submitted', 'review': {'id': 5640130890, 'node_id': 'PRR_kwDOALCn2M8AAAABUC2RSg', 'user': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': 'I can confirm this fixes the issue', 'commit_id': 'cee23f7af6b1624da3e7190e5a18a282d82d567c', 'state': 'approved', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941#pullrequestreview-5640130890', 'pull_request_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941', '_links': {'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14941#pullrequestreview-5640130890'}, 'pull_request': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941'}}, 'submitted_at': '2026-10-24T21:39:58Z', 'updated_at': '2026-10-24T21:39:58Z', 'author_association': 'CONTRIBUTOR'}, 'pull_request': {'url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941', 'id': 4927811785, 'node_id': 'PR_kwDOALCn2M8AAAABJbhwyQ', 'html_url': 'https://github.com/dolphin-emu/dolphin/pull/14941', 'diff_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.diff', 'patch_url': 'https://github.com/dolphin-emu/dolphin/pull/14941.patch', 'issue_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941', 'number': 14941, 'state': 'open', 'locked': False, 'title': 'DolphinQt: Fix crash from stale timer event in ToolTipWidget', 'user': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'body': '### This is an LLM assisted PR.\r\nIt is meant to fix the following crash reported in the forum: https://forums.dolphin-emu.org/Thread-assertion-crash-when-adjusting-a-slider-in-the-ui\r\n\r\nWhile I have tested the changes made by the LLM and have confirmed, that I can no longer trigger the crash with the code changes, I can not take responsibility for the code changes, as I do not have a deep enough understanding of the code (which is a requirement for LLM assisted code changes to be accepted into Dolphin according to the contribution guidelines).\r\n\r\nI can not say for certain if this is a band-aid solution and if there still is an underlying error, but with this fix applied, Dolphin (debug build) no longer crashes, and Dolphin (release build) no longer throws an error output in the terminal when trying to reproduce the crash.\r\n\r\nSteps to reproduce the crash were:\r\n\r\nOn a debug build of Dolphin: On any slider in the UI: Click and hold LMB not on the current slider position, but to the side of it. Hold the cursor still while keeping LMB pressed.\r\n\r\nThe LLM suggested it might be an issue with the tooltip timer, and this is the LLM generated explanation for the code change:\r\n\r\n"A queued QTimerEvent can be dispatched after the timer was already killed (Qt recycles timer ids), e.g. when a slider is dragged and enter/leave events fire in rapid succession. In that case m_timer_id is empty and dereferencing it in timerEvent() asserts on \'this->_M_is_engaged()\' in debug builds, while in release builds it passes a garbage timer id to killTimer().\r\n\r\nOnly process the event if it matches the timer we are tracking, which also prevents showing a balloon for a stale event."', 'created_at': '2026-10-19T21:41:44Z', 'updated_at': '2026-10-20T21:00:50Z', 'closed_at': None, 'merged_at': None, 'merge_commit_sha': 'a3647696ab030d7ad2cc078ae05eeb0c732c16b7', 'assignees': [], 'requested_reviewers': [], 'requested_teams': [], 'labels': [], 'milestone': None, 'draft': False, 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941/commits', 'review_comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941/comments', 'review_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/comments', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/cee23f7af6b1624da3e7190e5a18a282d82d567c', 'head': {'label': 'debug687:patch-1', 'ref': 'patch-1', 'sha': 'cee23f7af6b1624da3e7190e5a18a282d82d567c', 'user': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 1426197583, 'node_id': 'R_kgDOVQIMTw', 'name': 'dolphin', 'full_name': 'debug687/dolphin', 'private': False, 'owner': {'login': 'debug687', 'id': 313431556, 'node_id': 'U_kgDOEq6WBA', 'avatar_url': 'https://avatars.githubusercontent.com/u/313431556?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/debug687', 'html_url': 'https://github.com/debug687', 'followers_url': 'https://api.github.com/users/debug687/followers', 'following_url': 'https://api.github.com/users/debug687/following{/other_user}', 'gists_url': 'https://api.github.com/users/debug687/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/debug687/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/debug687/subscriptions', 'organizations_url': 'https://api.github.com/users/debug687/orgs', 'repos_url': 'https://api.github.com/users/debug687/repos', 'events_url': 'https://api.github.com/users/debug687/events{/privacy}', 'received_events_url': 'https://api.github.com/users/debug687/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/debug687/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': True, 'url': 'https://api.github.com/repos/debug687/dolphin', 'forks_url': 'https://api.github.com/repos/debug687/dolphin/forks', 'keys_url': 'https://api.github.com/repos/debug687/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/debug687/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/debug687/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/debug687/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/debug687/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/debug687/dolphin/events', 'assignees_url': 'https://api.github.com/repos/debug687/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/debug687/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/debug687/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/debug687/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/debug687/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/debug687/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/debug687/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/debug687/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/debug687/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/debug687/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/debug687/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/debug687/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/debug687/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/debug687/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/debug687/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/debug687/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/debug687/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/debug687/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/debug687/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/debug687/dolphin/merges', 'archive_url': 'https://api.github.com/repos/debug687/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/debug687/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/debug687/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/debug687/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/debug687/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/debug687/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/debug687/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/debug687/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/debug687/dolphin/deployments', 'created_at': '2026-10-19T21:25:06Z', 'updated_at': '2026-10-20T20:00:10Z', 'pushed_at': '2026-10-20T20:45:26Z', 'git_url': 'git://github.com/debug687/dolphin.git', 'ssh_url': 'git@github.com:debug687/dolphin.git', 'clone_url': 'https://github.com/debug687/dolphin.git', 'svn_url': 'https://github.com/debug687/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 523826, 'stargazers_count': 0, 'watchers_count': 0, 'language': 'C++', 'has_issues': False, 'has_projects': True, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 0, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 0, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': [], 'visibility': 'public', 'forks': 0, 'open_issues': 0, 'watchers': 0, 'default_branch': 'master', 'allow_squash_merge': True, 'allow_merge_commit': True, 'allow_rebase_merge': True, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, 'base': {'label': 'dolphin-emu:master', 'ref': 'master', 'sha': 'cf5cb7ef81c3e8e7af5c9d566334219ffda9f68b', 'user': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'repo': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'allow_squash_merge': False, 'allow_merge_commit': True, 'allow_rebase_merge': False, 'allow_auto_merge': False, 'delete_branch_on_merge': False, 'allow_update_branch': False, 'use_squash_pr_title_as_default': False, 'squash_merge_commit_message': 'COMMIT_MESSAGES', 'squash_merge_commit_title': 'COMMIT_OR_PR_TITLE', 'merge_commit_message': 'PR_TITLE', 'merge_commit_title': 'MERGE_MESSAGE'}}, '_links': {'self': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941'}, 'html': {'href': 'https://github.com/dolphin-emu/dolphin/pull/14941'}, 'issue': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941'}, 'comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/14941/comments'}, 'review_comments': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941/comments'}, 'review_comment': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/comments{/number}'}, 'commits': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls/14941/commits'}, 'statuses': {'href': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/cee23f7af6b1624da3e7190e5a18a282d82d567c'}}, 'author_association': 'NONE', 'auto_merge': None, 'assignee': None, 'active_lock_reason': None}, 'repository': {'id': 11577304, 'node_id': 'MDEwOlJlcG9zaXRvcnkxMTU3NzMwNA==', 'name': 'dolphin', 'full_name': 'dolphin-emu/dolphin', 'private': False, 'owner': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/dolphin-emu', 'html_url': 'https://github.com/dolphin-emu', 'followers_url': 'https://api.github.com/users/dolphin-emu/followers', 'following_url': 'https://api.github.com/users/dolphin-emu/following{/other_user}', 'gists_url': 'https://api.github.com/users/dolphin-emu/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/dolphin-emu/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/dolphin-emu/subscriptions', 'organizations_url': 'https://api.github.com/users/dolphin-emu/orgs', 'repos_url': 'https://api.github.com/users/dolphin-emu/repos', 'events_url': 'https://api.github.com/users/dolphin-emu/events{/privacy}', 'received_events_url': 'https://api.github.com/users/dolphin-emu/received_events', 'type': 'Organization', 'user_view_type': 'public', 'site_admin': False}, 'html_url': 'https://github.com/dolphin-emu/dolphin', 'description': 'Dolphin is a GameCube / Wii emulator, allowing you to play games for these two platforms on PC with improvements.', 'fork': False, 'url': 'https://api.github.com/repos/dolphin-emu/dolphin', 'forks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/forks', 'keys_url': 'https://api.github.com/repos/dolphin-emu/dolphin/keys{/key_id}', 'collaborators_url': 'https://api.github.com/repos/dolphin-emu/dolphin/collaborators{/collaborator}', 'teams_url': 'https://api.github.com/repos/dolphin-emu/dolphin/teams', 'hooks_url': 'https://api.github.com/repos/dolphin-emu/dolphin/hooks', 'issue_events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/events{/number}', 'events_url': 'https://api.github.com/repos/dolphin-emu/dolphin/events', 'assignees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/assignees{/user}', 'branches_url': 'https://api.github.com/repos/dolphin-emu/dolphin/branches{/branch}', 'tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/tags', 'blobs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/blobs{/sha}', 'git_tags_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/tags{/sha}', 'git_refs_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/refs{/sha}', 'trees_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/trees{/sha}', 'statuses_url': 'https://api.github.com/repos/dolphin-emu/dolphin/statuses/{sha}', 'languages_url': 'https://api.github.com/repos/dolphin-emu/dolphin/languages', 'stargazers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/stargazers', 'contributors_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contributors', 'subscribers_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscribers', 'subscription_url': 'https://api.github.com/repos/dolphin-emu/dolphin/subscription', 'commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/commits{/sha}', 'git_commits_url': 'https://api.github.com/repos/dolphin-emu/dolphin/git/commits{/sha}', 'comments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/comments{/number}', 'issue_comment_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues/comments{/number}', 'contents_url': 'https://api.github.com/repos/dolphin-emu/dolphin/contents/{+path}', 'compare_url': 'https://api.github.com/repos/dolphin-emu/dolphin/compare/{base}...{head}', 'merges_url': 'https://api.github.com/repos/dolphin-emu/dolphin/merges', 'archive_url': 'https://api.github.com/repos/dolphin-emu/dolphin/{archive_format}{/ref}', 'downloads_url': 'https://api.github.com/repos/dolphin-emu/dolphin/downloads', 'issues_url': 'https://api.github.com/repos/dolphin-emu/dolphin/issues{/number}', 'pulls_url': 'https://api.github.com/repos/dolphin-emu/dolphin/pulls{/number}', 'milestones_url': 'https://api.github.com/repos/dolphin-emu/dolphin/milestones{/number}', 'notifications_url': 'https://api.github.com/repos/dolphin-emu/dolphin/notifications{?since,all,participating}', 'labels_url': 'https://api.github.com/repos/dolphin-emu/dolphin/labels{/name}', 'releases_url': 'https://api.github.com/repos/dolphin-emu/dolphin/releases{/id}', 'deployments_url': 'https://api.github.com/repos/dolphin-emu/dolphin/deployments', 'created_at': '2013-07-22T09:07:57Z', 'updated_at': '2026-10-24T20:04:30Z', 'pushed_at': '2026-10-24T20:04:25Z', 'git_url': 'git://github.com/dolphin-emu/dolphin.git', 'ssh_url': 'git@github.com:dolphin-emu/dolphin.git', 'clone_url': 'https://github.com/dolphin-emu/dolphin.git', 'svn_url': 'https://github.com/dolphin-emu/dolphin', 'homepage': 'https://dolphin-emu.org', 'size': 561406, 'stargazers_count': 15709, 'watchers_count': 15709, 'language': 'C++', 'has_issues': False, 'has_projects': False, 'has_downloads': False, 'has_wiki': True, 'has_pages': False, 'has_discussions': False, 'forks_count': 3352, 'mirror_url': None, 'archived': False, 'disabled': False, 'open_issues_count': 480, 'license': {'key': 'other', 'name': 'Other', 'spdx_id': 'NOASSERTION', 'url': None, 'node_id': 'MDc6TGljZW5zZTA='}, 'allow_forking': True, 'is_template': False, 'web_commit_signoff_required': False, 'has_pull_requests': True, 'pull_request_creation_policy': 'all', 'topics': ['cpp', 'emulation', 'emulator', 'gamecube', 'wii'], 'visibility': 'public', 'forks': 3352, 'open_issues': 480, 'watchers': 15709, 'default_branch': 'master', 'custom_properties': {}}, 'organization': {'login': 'dolphin-emu', 'id': 5050316, 'node_id': 'MDEyOk9yZ2FuaXphdGlvbjUwNTAzMTY=', 'url': 'https://api.github.com/orgs/dolphin-emu', 'repos_url': 'https://api.github.com/orgs/dolphin-emu/repos', 'events_url': 'https://api.github.com/orgs/dolphin-emu/events', 'hooks_url': 'https://api.github.com/orgs/dolphin-emu/hooks', 'issues_url': 'https://api.github.com/orgs/dolphin-emu/issues', 'members_url': 'https://api.github.com/orgs/dolphin-emu/members{/member}', 'public_members_url': 'https://api.github.com/orgs/dolphin-emu/public_members{/member}', 'avatar_url': 'https://avatars.githubusercontent.com/u/5050316?v=4', 'description': ''}, 'sender': {'login': 'JoshuaVandaele', 'id': 24195176, 'node_id': 'MDQ6VXNlcjI0MTk1MTc2', 'avatar_url': 'https://avatars.githubusercontent.com/u/24195176?v=4', 'gravatar_id': '', 'url': 'https://api.github.com/users/JoshuaVandaele', 'html_url': 'https://github.com/JoshuaVandaele', 'followers_url': 'https://api.github.com/users/JoshuaVandaele/followers', 'following_url': 'https://api.github.com/users/JoshuaVandaele/following{/other_user}', 'gists_url': 'https://api.github.com/users/JoshuaVandaele/gists{/gist_id}', 'starred_url': 'https://api.github.com/users/JoshuaVandaele/starred{/owner}{/repo}', 'subscriptions_url': 'https://api.github.com/users/JoshuaVandaele/subscriptions', 'organizations_url': 'https://api.github.com/users/JoshuaVandaele/orgs', 'repos_url': 'https://api.github.com/users/JoshuaVandaele/repos', 'events_url': 'https://api.github.com/users/JoshuaVandaele/events{/privacy}', 'received_events_url': 'https://api.github.com/users/JoshuaVandaele/received_events', 'type': 'User', 'user_view_type': 'public', 'site_admin': False}, 'installation': {'id': 35437981, 'node_id': 'MDIzOkludGVncmF0aW9uSW5zdGFsbGF0aW9uMzU0Mzc5ODE='}}, 'type': 'raw_gh_hook'}