https
GET
api.github.com
None
/repos/PyGithub/PyGithub
{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'}
None
200
[('Date', 'Mon, 29 Sep 2025 14:47:49 GMT'), ('Content-Type', 'application/json; charset=utf-8'), ('Cache-Control', 'private, max-age=60, s-maxage=60'), ('Vary', 'Accept, Authorization, Cookie, X-GitHub-OTP,Accept-Encoding, Accept, X-Requested-With'), ('ETag', 'W/"dbbf737c89f42313edc81a4322fcda167f925ce164808a453d64e0fc0038056f"'), ('Last-Modified', 'Mon, 29 Sep 2025 13:36:37 GMT'), ('github-authentication-token-expiration', '2025-11-13 21:31:56 +0100'), ('X-GitHub-Media-Type', 'github.v3; format=json'), ('x-accepted-github-permissions', 'metadata=read'), ('x-github-api-version-selected', '2022-11-28'), ('X-RateLimit-Limit', '5000'), ('X-RateLimit-Remaining', '4977'), ('X-RateLimit-Reset', '1759159508'), ('X-RateLimit-Used', '23'), ('X-RateLimit-Resource', 'core'), ('Access-Control-Expose-Headers', 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset'), ('Access-Control-Allow-Origin', '*'), ('Strict-Transport-Security', 'max-age=31536000; includeSubdomains; preload'), ('X-Frame-Options', 'deny'), ('X-Content-Type-Options', 'nosniff'), ('X-XSS-Protection', '0'), ('Referrer-Policy', 'origin-when-cross-origin, strict-origin-when-cross-origin'), ('Content-Security-Policy', "default-src 'none'"), ('Content-Encoding', 'gzip'), ('Transfer-Encoding', 'chunked'), ('Server', 'github.com'), ('X-GitHub-Request-Id', '9AF8:39DBF6:979B249:8D08185:68DA9C14')]
{"id":3544490,"node_id":"MDEwOlJlcG9zaXRvcnkzNTQ0NDkw","name":"PyGithub","full_name":"PyGithub/PyGithub","private":false,"owner":{"login":"PyGithub","id":11288996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjExMjg4OTk2","avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=4","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","user_view_type":"public","site_admin":false},"html_url":"https://github.com/PyGithub/PyGithub","description":"Typed interactions with the GitHub API v3","fork":false,"url":"https://api.github.com/repos/PyGithub/PyGithub","forks_url":"https://api.github.com/repos/PyGithub/PyGithub/forks","keys_url":"https://api.github.com/repos/PyGithub/PyGithub/keys{/key_id}","collaborators_url":"https://api.github.com/repos/PyGithub/PyGithub/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/PyGithub/PyGithub/teams","hooks_url":"https://api.github.com/repos/PyGithub/PyGithub/hooks","issue_events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/events{/number}","events_url":"https://api.github.com/repos/PyGithub/PyGithub/events","assignees_url":"https://api.github.com/repos/PyGithub/PyGithub/assignees{/user}","branches_url":"https://api.github.com/repos/PyGithub/PyGithub/branches{/branch}","tags_url":"https://api.github.com/repos/PyGithub/PyGithub/tags","blobs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/PyGithub/PyGithub/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/PyGithub/PyGithub/git/refs{/sha}","trees_url":"https://api.github.com/repos/PyGithub/PyGithub/git/trees{/sha}","statuses_url":"https://api.github.com/repos/PyGithub/PyGithub/statuses/{sha}","languages_url":"https://api.github.com/repos/PyGithub/PyGithub/languages","stargazers_url":"https://api.github.com/repos/PyGithub/PyGithub/stargazers","contributors_url":"https://api.github.com/repos/PyGithub/PyGithub/contributors","subscribers_url":"https://api.github.com/repos/PyGithub/PyGithub/subscribers","subscription_url":"https://api.github.com/repos/PyGithub/PyGithub/subscription","commits_url":"https://api.github.com/repos/PyGithub/PyGithub/commits{/sha}","git_commits_url":"https://api.github.com/repos/PyGithub/PyGithub/git/commits{/sha}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/comments{/number}","issue_comment_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments{/number}","contents_url":"https://api.github.com/repos/PyGithub/PyGithub/contents/{+path}","compare_url":"https://api.github.com/repos/PyGithub/PyGithub/compare/{base}...{head}","merges_url":"https://api.github.com/repos/PyGithub/PyGithub/merges","archive_url":"https://api.github.com/repos/PyGithub/PyGithub/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/PyGithub/PyGithub/downloads","issues_url":"https://api.github.com/repos/PyGithub/PyGithub/issues{/number}","pulls_url":"https://api.github.com/repos/PyGithub/PyGithub/pulls{/number}","milestones_url":"https://api.github.com/repos/PyGithub/PyGithub/milestones{/number}","notifications_url":"https://api.github.com/repos/PyGithub/PyGithub/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/labels{/name}","releases_url":"https://api.github.com/repos/PyGithub/PyGithub/releases{/id}","deployments_url":"https://api.github.com/repos/PyGithub/PyGithub/deployments","created_at":"2012-02-25T12:53:47Z","updated_at":"2025-09-29T13:36:37Z","pushed_at":"2025-09-26T09:48:05Z","git_url":"git://github.com/PyGithub/PyGithub.git","ssh_url":"git@github.com:PyGithub/PyGithub.git","clone_url":"https://github.com/PyGithub/PyGithub.git","svn_url":"https://github.com/PyGithub/PyGithub","homepage":"https://pygithub.readthedocs.io/","size":20677,"stargazers_count":7541,"watchers_count":7541,"language":"Python","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":1858,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":361,"license":{"key":"lgpl-3.0","name":"GNU Lesser General Public License v3.0","spdx_id":"LGPL-3.0","url":"https://api.github.com/licenses/lgpl-3.0","node_id":"MDc6TGljZW5zZTEy"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["github","github-api","pygithub","python"],"visibility":"public","forks":1858,"open_issues":361,"watchers":7541,"default_branch":"main","permissions":{"admin":true,"maintain":true,"push":true,"triage":true,"pull":true},"custom_properties":{},"organization":{"login":"PyGithub","id":11288996,"node_id":"MDEyOk9yZ2FuaXphdGlvbjExMjg4OTk2","avatar_url":"https://avatars.githubusercontent.com/u/11288996?v=4","gravatar_id":"","url":"https://api.github.com/users/PyGithub","html_url":"https://github.com/PyGithub","followers_url":"https://api.github.com/users/PyGithub/followers","following_url":"https://api.github.com/users/PyGithub/following{/other_user}","gists_url":"https://api.github.com/users/PyGithub/gists{/gist_id}","starred_url":"https://api.github.com/users/PyGithub/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/PyGithub/subscriptions","organizations_url":"https://api.github.com/users/PyGithub/orgs","repos_url":"https://api.github.com/users/PyGithub/repos","events_url":"https://api.github.com/users/PyGithub/events{/privacy}","received_events_url":"https://api.github.com/users/PyGithub/received_events","type":"Organization","user_view_type":"public","site_admin":false},"network_count":1858,"subscribers_count":114}

https
GET
api.github.com
None
/repos/PyGithub/PyGithub/issues/3372
{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'}
None
200
[('Date', 'Mon, 29 Sep 2025 14:47:50 GMT'), ('Content-Type', 'application/json; charset=utf-8'), ('Cache-Control', 'private, max-age=60, s-maxage=60'), ('Vary', 'Accept, Authorization, Cookie, X-GitHub-OTP,Accept-Encoding, Accept, X-Requested-With'), ('ETag', 'W/"81e39cfb02ad04e2f9a4f258a9fae2f5219b30151bc0b0b15ca959014997226d"'), ('Last-Modified', 'Wed, 17 Sep 2025 19:49:40 GMT'), ('github-authentication-token-expiration', '2025-11-13 21:31:56 +0100'), ('X-GitHub-Media-Type', 'github.v3; format=json'), ('x-accepted-github-permissions', 'issues=read'), ('x-github-api-version-selected', '2022-11-28'), ('X-RateLimit-Limit', '5000'), ('X-RateLimit-Remaining', '4976'), ('X-RateLimit-Reset', '1759159508'), ('X-RateLimit-Used', '24'), ('X-RateLimit-Resource', 'core'), ('Access-Control-Expose-Headers', 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset'), ('Access-Control-Allow-Origin', '*'), ('Strict-Transport-Security', 'max-age=31536000; includeSubdomains; preload'), ('X-Frame-Options', 'deny'), ('X-Content-Type-Options', 'nosniff'), ('X-XSS-Protection', '0'), ('Referrer-Policy', 'origin-when-cross-origin, strict-origin-when-cross-origin'), ('Content-Security-Policy', "default-src 'none'"), ('Content-Encoding', 'gzip'), ('Transfer-Encoding', 'chunked'), ('Server', 'github.com'), ('X-GitHub-Request-Id', '9AFA:C624B:C8DADA9:BA3E425:68DA9C15')]
{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","repository_url":"https://api.github.com/repos/PyGithub/PyGithub","labels_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372/labels{/name}","comments_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372/comments","events_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372/events","html_url":"https://github.com/PyGithub/PyGithub/issues/3372","id":3398817538,"node_id":"I_kwDOADYVqs7KldcC","number":3372,"title":"Commit.files does not respect requester.per_page (in forward mode)","user":{"login":"iarspider","id":636602,"node_id":"MDQ6VXNlcjYzNjYwMg==","avatar_url":"https://avatars.githubusercontent.com/u/636602?v=4","gravatar_id":"","url":"https://api.github.com/users/iarspider","html_url":"https://github.com/iarspider","followers_url":"https://api.github.com/users/iarspider/followers","following_url":"https://api.github.com/users/iarspider/following{/other_user}","gists_url":"https://api.github.com/users/iarspider/gists{/gist_id}","starred_url":"https://api.github.com/users/iarspider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iarspider/subscriptions","organizations_url":"https://api.github.com/users/iarspider/orgs","repos_url":"https://api.github.com/users/iarspider/repos","events_url":"https://api.github.com/users/iarspider/events{/privacy}","received_events_url":"https://api.github.com/users/iarspider/received_events","type":"User","user_view_type":"public","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":4,"created_at":"2025-09-09T14:51:27Z","updated_at":"2025-09-17T19:49:40Z","closed_at":null,"author_association":"CONTRIBUTOR","type":{"id":1386163,"node_id":"IT_kwDOAKxBpM4AFSaz","name":"Bug","description":"An unexpected problem or behavior","color":"red","created_at":"2024-01-25T12:55:41Z","updated_at":"2024-07-26T10:24:51Z","is_enabled":true},"active_lock_reason":null,"sub_issues_summary":{"total":0,"completed":0,"percent_completed":0},"issue_dependencies_summary":{"blocked_by":0,"total_blocked_by":0,"blocking":0,"total_blocking":0},"body":"Minimal example:\n\n```\nimport logging\nfrom github import Github, Auth\ngh = Github(auth=Auth.Token($token), per_page=100)\ngh.requester._logger.setLevel(logging.DEBUG)\nrepo = gh.get_repo(\"iarspider-cmssw/cmssw\")\nissue = repo.get_issue(38)\npr = repo.get_pull(38)\ncommits = pr.get_commits()\ncommit = commits[0]\nfiles = list(commit.files)\nprint(len(files))\nfiles = list(reversed(commit.files))\nprint(len(files))\n```\n\nRunning this script and filtering the output with `grep '^GET' | awk '{print $1,$2}'`, I get this output:\n\n```\nGET https://api.github.com/repos/iarspider-cmssw/cmssw/pulls/38/commits?per_page=100\nGET https://api.github.com/repos/iarspider-cmssw/cmssw/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?page=2\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?page=3\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?page=4\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?page=5\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?page=6\nGET https://api.github.com/repos/iarspider-cmssw/cmssw/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=16\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=15\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=14\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=13\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=12\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=11\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=10\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=9\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=8\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=7\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=6\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=5\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=4\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=3\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=2\nGET https://api.github.com/repositories/399376380/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75?per_page=100&page=1\n```\n\nNotice that forward iteration ignores per_page, but reverse respects it.\n\nThe [endpoint](https://docs.github.com/en/rest/commits/commits?apiVersion=2022-11-28#get-a-commit) supports `per_page` parameter. ","closed_by":null,"reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372/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/PyGithub/PyGithub/issues/3372/timeline","performed_via_github_app":null,"state_reason":null}

https
GET
api.github.com
None
/repos/PyGithub/PyGithub/issues/3372/comments?per_page=4
{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'}
None
200
[('Date', 'Mon, 29 Sep 2025 14:47:53 GMT'), ('Content-Type', 'application/json; charset=utf-8'), ('Cache-Control', 'private, max-age=60, s-maxage=60'), ('Vary', 'Accept, Authorization, Cookie, X-GitHub-OTP,Accept-Encoding, Accept, X-Requested-With'), ('ETag', 'W/"39a41542f4756e0b92e04fb4a1d80003cd8150bfacc47196f4668ce5c7c41150"'), ('github-authentication-token-expiration', '2025-11-13 21:31:56 +0100'), ('X-GitHub-Media-Type', 'github.v3; format=json'), ('x-accepted-github-permissions', 'issues=read; pull_requests=read'), ('x-github-api-version-selected', '2022-11-28'), ('X-RateLimit-Limit', '5000'), ('X-RateLimit-Remaining', '4975'), ('X-RateLimit-Reset', '1759159508'), ('X-RateLimit-Used', '25'), ('X-RateLimit-Resource', 'core'), ('Access-Control-Expose-Headers', 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset'), ('Access-Control-Allow-Origin', '*'), ('Strict-Transport-Security', 'max-age=31536000; includeSubdomains; preload'), ('X-Frame-Options', 'deny'), ('X-Content-Type-Options', 'nosniff'), ('X-XSS-Protection', '0'), ('Referrer-Policy', 'origin-when-cross-origin, strict-origin-when-cross-origin'), ('Content-Security-Policy', "default-src 'none'"), ('Content-Encoding', 'gzip'), ('Transfer-Encoding', 'chunked'), ('Server', 'github.com'), ('X-GitHub-Request-Id', '9B02:39DBF6:979CA90:8D09846:68DA9C17')]
[{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3291867079","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3291867079","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3291867079,"node_id":"IC_kwDOADYVqs7ENefH","user":{"login":"iarspider","id":636602,"node_id":"MDQ6VXNlcjYzNjYwMg==","avatar_url":"https://avatars.githubusercontent.com/u/636602?v=4","gravatar_id":"","url":"https://api.github.com/users/iarspider","html_url":"https://github.com/iarspider","followers_url":"https://api.github.com/users/iarspider/followers","following_url":"https://api.github.com/users/iarspider/following{/other_user}","gists_url":"https://api.github.com/users/iarspider/gists{/gist_id}","starred_url":"https://api.github.com/users/iarspider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iarspider/subscriptions","organizations_url":"https://api.github.com/users/iarspider/orgs","repos_url":"https://api.github.com/users/iarspider/repos","events_url":"https://api.github.com/users/iarspider/events{/privacy}","received_events_url":"https://api.github.com/users/iarspider/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-15T12:15:13Z","updated_at":"2025-09-15T12:15:44Z","body":"Did a bit of debugging. \n\nSo, when you query [List Commits on a Pull Request](https://docs.github.com/en/rest/pulls/pulls?apiVersion=2022-11-28#list-commits-on-a-pull-request) endpoint, the returned `Commit` objects' `url` attribute does not have `per_page` parameter set - see, e.g. [link](https://api.github.com/repos/iarspider-cmssw/cmssw/pulls/38/commits?per_page=100). \n\nPyGithub uses that `link` to get other pages.\n\nMy [initial attempt]((https://github.com/PyGithub/PyGithub/pull/3371)) to fix this should work, but I'm confused why the test fails - namely, why it expects `per_page=1` if `setPerPage` is not called in `tests/Commit.py`?","author_association":"CONTRIBUTOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3291867079/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3300047905","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3300047905","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3300047905,"node_id":"IC_kwDOADYVqs7Esrwh","user":{"login":"EnricoMi","id":44700269,"node_id":"MDQ6VXNlcjQ0NzAwMjY5","avatar_url":"https://avatars.githubusercontent.com/u/44700269?v=4","gravatar_id":"","url":"https://api.github.com/users/EnricoMi","html_url":"https://github.com/EnricoMi","followers_url":"https://api.github.com/users/EnricoMi/followers","following_url":"https://api.github.com/users/EnricoMi/following{/other_user}","gists_url":"https://api.github.com/users/EnricoMi/gists{/gist_id}","starred_url":"https://api.github.com/users/EnricoMi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EnricoMi/subscriptions","organizations_url":"https://api.github.com/users/EnricoMi/orgs","repos_url":"https://api.github.com/users/EnricoMi/repos","events_url":"https://api.github.com/users/EnricoMi/events{/privacy}","received_events_url":"https://api.github.com/users/EnricoMi/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-16T19:22:02Z","updated_at":"2025-09-16T19:53:20Z","body":"I could reproduce this with your code above. The problem only occurs with commits having more than 300 files. The call\n\n    GET /repos/iarspider-cmssw/cmssw/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75\n\nshould already have the `?per_page=100` to limit the number of files retrieved for the commit. Then, the pagination should work as expected. I will look into this.","author_association":"COLLABORATOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3300047905/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3301970697","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3301970697","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3301970697,"node_id":"IC_kwDOADYVqs7E0BMJ","user":{"login":"iarspider","id":636602,"node_id":"MDQ6VXNlcjYzNjYwMg==","avatar_url":"https://avatars.githubusercontent.com/u/636602?v=4","gravatar_id":"","url":"https://api.github.com/users/iarspider","html_url":"https://github.com/iarspider","followers_url":"https://api.github.com/users/iarspider/followers","following_url":"https://api.github.com/users/iarspider/following{/other_user}","gists_url":"https://api.github.com/users/iarspider/gists{/gist_id}","starred_url":"https://api.github.com/users/iarspider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iarspider/subscriptions","organizations_url":"https://api.github.com/users/iarspider/orgs","repos_url":"https://api.github.com/users/iarspider/repos","events_url":"https://api.github.com/users/iarspider/events{/privacy}","received_events_url":"https://api.github.com/users/iarspider/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-17T08:44:18Z","updated_at":"2025-09-17T08:44:18Z","body":"@EnricoMi the link to my fix disappeared while I was writing the comment: https://github.com/PyGithub/PyGithub/pull/3371 . This breaks a single test (`Commit.testAttributes`), I will also try to figure out why","author_association":"CONTRIBUTOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3301970697/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3304363431","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3304363431","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3304363431,"node_id":"IC_kwDOADYVqs7E9JWn","user":{"login":"EnricoMi","id":44700269,"node_id":"MDQ6VXNlcjQ0NzAwMjY5","avatar_url":"https://avatars.githubusercontent.com/u/44700269?v=4","gravatar_id":"","url":"https://api.github.com/users/EnricoMi","html_url":"https://github.com/EnricoMi","followers_url":"https://api.github.com/users/EnricoMi/followers","following_url":"https://api.github.com/users/EnricoMi/following{/other_user}","gists_url":"https://api.github.com/users/EnricoMi/gists{/gist_id}","starred_url":"https://api.github.com/users/EnricoMi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EnricoMi/subscriptions","organizations_url":"https://api.github.com/users/EnricoMi/orgs","repos_url":"https://api.github.com/users/EnricoMi/repos","events_url":"https://api.github.com/users/EnricoMi/events{/privacy}","received_events_url":"https://api.github.com/users/EnricoMi/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-17T19:49:40Z","updated_at":"2025-09-17T19:49:40Z","body":"Fix available in #3377. This adds the `per_page` parameter if that is not the default when fetching the commit (and hence the first page of files).","author_association":"COLLABORATOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3304363431/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"performed_via_github_app":null}]

https
GET
api.github.com
None
/repos/PyGithub/PyGithub/issues/3372/comments?per_page=4
{'Authorization': 'token private_token_removed', 'User-Agent': 'PyGithub/Python'}
None
200
[('Date', 'Mon, 29 Sep 2025 14:47:54 GMT'), ('Content-Type', 'application/json; charset=utf-8'), ('Cache-Control', 'private, max-age=60, s-maxage=60'), ('Vary', 'Accept, Authorization, Cookie, X-GitHub-OTP,Accept-Encoding, Accept, X-Requested-With'), ('ETag', 'W/"39a41542f4756e0b92e04fb4a1d80003cd8150bfacc47196f4668ce5c7c41150"'), ('github-authentication-token-expiration', '2025-11-13 21:31:56 +0100'), ('X-GitHub-Media-Type', 'github.v3; format=json'), ('x-accepted-github-permissions', 'issues=read; pull_requests=read'), ('x-github-api-version-selected', '2022-11-28'), ('X-RateLimit-Limit', '5000'), ('X-RateLimit-Remaining', '4974'), ('X-RateLimit-Reset', '1759159508'), ('X-RateLimit-Used', '26'), ('X-RateLimit-Resource', 'core'), ('Access-Control-Expose-Headers', 'ETag, Link, Location, Retry-After, X-GitHub-OTP, X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Used, X-RateLimit-Resource, X-RateLimit-Reset, X-OAuth-Scopes, X-Accepted-OAuth-Scopes, X-Poll-Interval, X-GitHub-Media-Type, X-GitHub-SSO, X-GitHub-Request-Id, Deprecation, Sunset'), ('Access-Control-Allow-Origin', '*'), ('Strict-Transport-Security', 'max-age=31536000; includeSubdomains; preload'), ('X-Frame-Options', 'deny'), ('X-Content-Type-Options', 'nosniff'), ('X-XSS-Protection', '0'), ('Referrer-Policy', 'origin-when-cross-origin, strict-origin-when-cross-origin'), ('Content-Security-Policy', "default-src 'none'"), ('Content-Encoding', 'gzip'), ('Transfer-Encoding', 'chunked'), ('Server', 'github.com'), ('X-GitHub-Request-Id', '95F2:1D453F:BE8086F:B052EC3:68DA9C1A')]
[{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3291867079","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3291867079","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3291867079,"node_id":"IC_kwDOADYVqs7ENefH","user":{"login":"iarspider","id":636602,"node_id":"MDQ6VXNlcjYzNjYwMg==","avatar_url":"https://avatars.githubusercontent.com/u/636602?v=4","gravatar_id":"","url":"https://api.github.com/users/iarspider","html_url":"https://github.com/iarspider","followers_url":"https://api.github.com/users/iarspider/followers","following_url":"https://api.github.com/users/iarspider/following{/other_user}","gists_url":"https://api.github.com/users/iarspider/gists{/gist_id}","starred_url":"https://api.github.com/users/iarspider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iarspider/subscriptions","organizations_url":"https://api.github.com/users/iarspider/orgs","repos_url":"https://api.github.com/users/iarspider/repos","events_url":"https://api.github.com/users/iarspider/events{/privacy}","received_events_url":"https://api.github.com/users/iarspider/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-15T12:15:13Z","updated_at":"2025-09-15T12:15:44Z","body":"Did a bit of debugging. \n\nSo, when you query [List Commits on a Pull Request](https://docs.github.com/en/rest/pulls/pulls?apiVersion=2022-11-28#list-commits-on-a-pull-request) endpoint, the returned `Commit` objects' `url` attribute does not have `per_page` parameter set - see, e.g. [link](https://api.github.com/repos/iarspider-cmssw/cmssw/pulls/38/commits?per_page=100). \n\nPyGithub uses that `link` to get other pages.\n\nMy [initial attempt]((https://github.com/PyGithub/PyGithub/pull/3371)) to fix this should work, but I'm confused why the test fails - namely, why it expects `per_page=1` if `setPerPage` is not called in `tests/Commit.py`?","author_association":"CONTRIBUTOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3291867079/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3300047905","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3300047905","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3300047905,"node_id":"IC_kwDOADYVqs7Esrwh","user":{"login":"EnricoMi","id":44700269,"node_id":"MDQ6VXNlcjQ0NzAwMjY5","avatar_url":"https://avatars.githubusercontent.com/u/44700269?v=4","gravatar_id":"","url":"https://api.github.com/users/EnricoMi","html_url":"https://github.com/EnricoMi","followers_url":"https://api.github.com/users/EnricoMi/followers","following_url":"https://api.github.com/users/EnricoMi/following{/other_user}","gists_url":"https://api.github.com/users/EnricoMi/gists{/gist_id}","starred_url":"https://api.github.com/users/EnricoMi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EnricoMi/subscriptions","organizations_url":"https://api.github.com/users/EnricoMi/orgs","repos_url":"https://api.github.com/users/EnricoMi/repos","events_url":"https://api.github.com/users/EnricoMi/events{/privacy}","received_events_url":"https://api.github.com/users/EnricoMi/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-16T19:22:02Z","updated_at":"2025-09-16T19:53:20Z","body":"I could reproduce this with your code above. The problem only occurs with commits having more than 300 files. The call\n\n    GET /repos/iarspider-cmssw/cmssw/commits/b6db3e643d2bd16deee12590d1312a3addcd2d75\n\nshould already have the `?per_page=100` to limit the number of files retrieved for the commit. Then, the pagination should work as expected. I will look into this.","author_association":"COLLABORATOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3300047905/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3301970697","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3301970697","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3301970697,"node_id":"IC_kwDOADYVqs7E0BMJ","user":{"login":"iarspider","id":636602,"node_id":"MDQ6VXNlcjYzNjYwMg==","avatar_url":"https://avatars.githubusercontent.com/u/636602?v=4","gravatar_id":"","url":"https://api.github.com/users/iarspider","html_url":"https://github.com/iarspider","followers_url":"https://api.github.com/users/iarspider/followers","following_url":"https://api.github.com/users/iarspider/following{/other_user}","gists_url":"https://api.github.com/users/iarspider/gists{/gist_id}","starred_url":"https://api.github.com/users/iarspider/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/iarspider/subscriptions","organizations_url":"https://api.github.com/users/iarspider/orgs","repos_url":"https://api.github.com/users/iarspider/repos","events_url":"https://api.github.com/users/iarspider/events{/privacy}","received_events_url":"https://api.github.com/users/iarspider/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-17T08:44:18Z","updated_at":"2025-09-17T08:44:18Z","body":"@EnricoMi the link to my fix disappeared while I was writing the comment: https://github.com/PyGithub/PyGithub/pull/3371 . This breaks a single test (`Commit.testAttributes`), I will also try to figure out why","author_association":"CONTRIBUTOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3301970697/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"performed_via_github_app":null},{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3304363431","html_url":"https://github.com/PyGithub/PyGithub/issues/3372#issuecomment-3304363431","issue_url":"https://api.github.com/repos/PyGithub/PyGithub/issues/3372","id":3304363431,"node_id":"IC_kwDOADYVqs7E9JWn","user":{"login":"EnricoMi","id":44700269,"node_id":"MDQ6VXNlcjQ0NzAwMjY5","avatar_url":"https://avatars.githubusercontent.com/u/44700269?v=4","gravatar_id":"","url":"https://api.github.com/users/EnricoMi","html_url":"https://github.com/EnricoMi","followers_url":"https://api.github.com/users/EnricoMi/followers","following_url":"https://api.github.com/users/EnricoMi/following{/other_user}","gists_url":"https://api.github.com/users/EnricoMi/gists{/gist_id}","starred_url":"https://api.github.com/users/EnricoMi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/EnricoMi/subscriptions","organizations_url":"https://api.github.com/users/EnricoMi/orgs","repos_url":"https://api.github.com/users/EnricoMi/repos","events_url":"https://api.github.com/users/EnricoMi/events{/privacy}","received_events_url":"https://api.github.com/users/EnricoMi/received_events","type":"User","user_view_type":"public","site_admin":false},"created_at":"2025-09-17T19:49:40Z","updated_at":"2025-09-17T19:49:40Z","body":"Fix available in #3377. This adds the `per_page` parameter if that is not the default when fetching the commit (and hence the first page of files).","author_association":"COLLABORATOR","reactions":{"url":"https://api.github.com/repos/PyGithub/PyGithub/issues/comments/3304363431/reactions","total_count":1,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":1,"rocket":0,"eyes":0},"performed_via_github_app":null}]
