{"id":48010,"name":"gidgethub","ecosystem":"pip","repository_url":"https://github.com/brettcannon/gidgethub","issues_count":5,"created_at":"2025-07-01T09:00:23.683Z","updated_at":"2025-07-01T09:00:23.683Z","purl":"pkg:pypi/gidgethub","metadata":{"id":2747564,"name":"gidgethub","ecosystem":"pypi","description":"An async GitHub API library","homepage":null,"licenses":"Apache","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/brettcannon/gidgethub","keywords_array":["github","sans-io","async"],"namespace":null,"versions_count":27,"first_release_published_at":"2017-03-09T01:50:21.000Z","latest_release_published_at":"2025-06-03T22:10:52.000Z","latest_release_number":"5.4.0","last_synced_at":"2025-06-03T22:16:03.086Z","created_at":"2022-04-10T11:08:14.597Z","updated_at":"2025-06-03T22:17:06.316Z","registry_url":"https://pypi.org/project/gidgethub/","install_command":"pip install gidgethub --index-url https://pypi.org/simple","documentation_url":"https://gidgethub.readthedocs.io","metadata":{"funding":null,"documentation":"https://gidgethub.readthedocs.io","classifiers":["Development Status :: 5 - Production/Stable","Intended Audience :: Developers","License :: OSI Approved :: Apache Software License","Programming Language :: Python :: 3 :: Only","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.13","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9"],"normalized_name":"gidgethub"},"repo_metadata":{"id":16289450,"uuid":"79673050","full_name":"gidgethub/gidgethub","owner":"gidgethub","description":"An async GitHub API library for Python","archived":false,"fork":false,"pushed_at":"2025-05-29T20:07:41.000Z","size":509,"stargazers_count":388,"open_issues_count":24,"forks_count":58,"subscribers_count":9,"default_branch":"main","last_synced_at":"2025-05-29T21:20:12.134Z","etag":null,"topics":["aiohttp","async","github","httpx","python","sans-io","tornado","treq","twisted"],"latest_commit_sha":null,"homepage":"https://gidgethub.readthedocs.io","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/gidgethub.png","metadata":{"files":{"readme":"README.rst","changelog":null,"contributing":"CONTRIBUTING.rst","funding":".github/FUNDING.yml","license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null},"funding":{"github":["Mariatta","brettcannon"]}},"created_at":"2017-01-21T21:08:59.000Z","updated_at":"2025-05-29T20:17:41.000Z","dependencies_parsed_at":"2024-06-18T13:50:54.891Z","dependency_job_id":"bd53c0d0-8059-413c-b9e0-063b3438715a","html_url":"https://github.com/gidgethub/gidgethub","commit_stats":null,"previous_names":["brettcannon/gidgethub"],"tags_count":19,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gidgethub","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":257814903,"owners_count":22606876,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"},"owner_record":{"login":"gidgethub","name":"gidgethub","uuid":"138931485","kind":"organization","description":"","email":null,"website":null,"location":"Canada","twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/138931485?v=4","repositories_count":1,"last_synced_at":"2023-07-27T23:13:55.907Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/gidgethub","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2023-07-27T23:13:55.909Z","updated_at":"2023-07-27T23:13:55.909Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gidgethub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/gidgethub/repositories"},"tags":[{"name":"v5.3.0","sha":"dbcdf4bd32de86288495dbbd8c1682399ba53ad1","kind":"commit","published_at":"2023-05-30T19:16:24.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v5.3.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v5.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.3.0/manifests"},{"name":"v5.2.1","sha":"9660d1e1c0187d9def32c473c8ceefcd130fe26f","kind":"commit","published_at":"2022-10-04T21:52:13.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v5.2.1","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v5.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.2.1/manifests"},{"name":"v5.2.0","sha":"2a9958cfde70c4fcc940b5f67a825eb0b75507c7","kind":"commit","published_at":"2022-05-31T20:42:06.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v5.2.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v5.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.2.0/manifests"},{"name":"v5.1.0","sha":"313f06b6d7eb5edc0bdce93fbe14d1d65229d88f","kind":"commit","published_at":"2022-01-21T23:01:53.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v5.1.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v5.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v5.1.0/manifests"},{"name":"5.0.1","sha":"8724568f87efe1a13c8e0e2251969c1ba9940c7a","kind":"commit","published_at":"2021-04-02T03:01:58.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/5.0.1","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/5.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/5.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/5.0.1/manifests"},{"name":"5.0.0","sha":"3b8941a0ccdad007db09dd601963ce989d64074f","kind":"commit","published_at":"2021-01-06T19:44:10.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/5.0.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/5.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/5.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/5.0.0/manifests"},{"name":"v4.2.0","sha":"27c104de7a3e1b3052fb252f11b61a8ee01691f1","kind":"commit","published_at":"2020-08-23T04:14:47.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v4.2.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v4.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.2.0/manifests"},{"name":"v4.1.1","sha":"e751664d95917dbdb856c382bfe2f4655e2a83c1","kind":"commit","published_at":"2020-06-06T00:15:05.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v4.1.1","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v4.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.1.1/manifests"},{"name":"v4.1.0","sha":"c62702693337ba169772aa09f408a7fbbe1ef661","kind":"commit","published_at":"2020-04-19T04:24:26.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v4.1.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v4.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v4.1.0/manifests"},{"name":"v3.3.0","sha":"2d1c79304cf3206156a0877cc539cad80b5342c1","kind":"commit","published_at":"2020-01-18T16:32:42.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v3.3.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v3.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.3.0/manifests"},{"name":"v3.2.0","sha":"94eafc268f70a363a3d271d5941e40f9c807938c","kind":"commit","published_at":"2019-11-01T23:22:40.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v3.2.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v3.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.2.0/manifests"},{"name":"v3.1.0","sha":"8f24dc4a2959ca43e462ae770efad73abc15efed","kind":"commit","published_at":"2018-12-14T22:55:19.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v3.1.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v3.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v3.1.0/manifests"},{"name":"v2.5.0","sha":"69384adca5c944e15a8c42b576e6f7619e609c9a","kind":"commit","published_at":"2018-03-23T21:57:47.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.5.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.5.0/manifests"},{"name":"v2.4.1","sha":"0c70cd5c8b0aa78dcf6bb637ed114c6fce9442ff","kind":"tag","published_at":"2017-06-04T19:23:47.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.4.1","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.4.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.4.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.4.1/manifests"},{"name":"v2.4.0","sha":"3e255c90c9b7eee51dcdb16cd051a81fd5d11401","kind":"tag","published_at":"2017-06-03T03:28:27.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.4.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.4.0/manifests"},{"name":"v2.3.0","sha":"b11fc5ced6548b73c7578a6b2aba1292807e7655","kind":"tag","published_at":"2017-06-03T02:03:15.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.3.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.3.0/manifests"},{"name":"v2.2.0","sha":"93107ede25c50da247e20e1867a06169336d2671","kind":"tag","published_at":"2017-04-29T17:22:33.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.2.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.2.0/manifests"},{"name":"v2.1.0","sha":"ca15ef0990bb948b609b27ec8d99178e0b7a5c06","kind":"tag","published_at":"2017-04-28T00:10:05.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.1.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"8c83705771a3921c09fd895e0ffb4676e3e410a8","kind":"tag","published_at":"2017-03-31T20:05:09.000Z","download_url":"https://codeload.github.com/gidgethub/gidgethub/tar.gz/v2.0.0","html_url":"https://github.com/gidgethub/gidgethub/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/gidgethub%2Fgidgethub/tags/v2.0.0/manifests"}]},"repo_metadata_updated_at":"2025-06-03T22:17:06.316Z","dependent_packages_count":11,"downloads":171474,"downloads_period":"last-month","dependent_repos_count":577,"rankings":{"downloads":1.4473754411103406,"dependent_repos_count":0.5842092025334786,"dependent_packages_count":0.9594488459162899,"stargazers_count":3.473633248068192,"forks_count":5.621933412885099,"docker_downloads_count":2.215636197301212,"average":2.383706057969102},"purl":"pkg:pypi/gidgethub","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/gidgethub","docker_dependents_count":1,"docker_downloads_count":21,"usage_url":"https://repos.ecosyste.ms/usage/pypi/gidgethub","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/gidgethub/dependencies","status":null,"funding_links":["https://github.com/sponsors/Mariatta","https://github.com/sponsors/brettcannon"],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gidgethub/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gidgethub/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gidgethub/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/gidgethub/related_packages","maintainers":[{"uuid":"brettcannon","login":"brettcannon","name":null,"email":null,"url":null,"packages_count":21,"html_url":"https://pypi.org/user/brettcannon/","role":null,"created_at":"2022-11-27T06:50:38.688Z","updated_at":"2022-11-27T06:50:38.688Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/brettcannon/packages"},{"uuid":"Mariatta","login":"Mariatta","name":null,"email":null,"url":null,"packages_count":6,"html_url":"https://pypi.org/user/Mariatta/","role":null,"created_at":"2022-11-27T06:50:38.700Z","updated_at":"2022-11-27T06:50:38.700Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/Mariatta/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":701015,"maintainers_count":297433,"namespaces_count":0,"keywords_count":231179,"github":"pypi","metadata":{"funded_packages_count":49332},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-07-01T05:53:33.932Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages","maintainers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers","namespaces_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/namespaces"}},"unique_repositories_count":5,"unique_repositories_count_past_30_days":2,"recent_issues":[{"uuid":"2783265826","node_id":"PR_kwDOAxHU6M6l5UQi","number":8851,"state":"open","title":"Bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":["dependency update"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-29T00:03:34.000Z","updated_at":"2025-08-29T00:03:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Harmon758/Harmonbot/pull/8851","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Harmon758%2FHarmonbot/issues/8851","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8851/packages"},{"uuid":"2766483406","node_id":"PR_kwDOPfXSXM6k5S_O","number":47,"state":"closed","title":"Bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-22T14:24:00.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-22T14:23:47.000Z","updated_at":"2025-08-22T14:24:00.000Z","time_to_close":13,"merged_at":"2025-08-22T14:23:59.000Z","merged_by":"github-actions[bot]","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/gagan-chawla/aiohttp/pull/47","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gagan-chawla%2Faiohttp/issues/47","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/47/packages"},{"uuid":"2632082477","node_id":"PR_kwDOJ3NBFM6c4mQt","number":149,"state":"open","title":"Bump gidgethub from 5.3.0 to 5.4.0 in /.github/workflows/requirements","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T11:21:33.000Z","updated_at":"2025-07-01T11:21:33.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":"/.github/workflows/requirements","ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/LLNL/hubcast/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLNL%2Fhubcast/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"},{"uuid":"2631157973","node_id":"PR_kwDOCNhlp86c1EjV","number":426,"state":"closed","title":"Bump the pip group with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["ezio-melotti"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-01T07:05:47.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T07:00:30.000Z","updated_at":"2025-07-01T07:05:47.000Z","time_to_close":317,"merged_at":"2025-07-01T07:05:47.000Z","merged_by":"hugovk","closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip","update_count":6,"packages":[{"name":"aiohttp","old_version":"3.12.6","new_version":"3.12.13","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"},{"name":"sentry-sdk","old_version":"2.29.1","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"coverage","old_version":"7.8.2","new_version":"7.9.1","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.12.6` | `3.12.13` |\n| [gidgethub](https://github.com/brettcannon/gidgethub) | `5.3.0` | `5.4.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.29.1` | `2.32.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.8.2` | `7.9.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n\nUpdates `aiohttp` from 3.12.6 to 3.12.13\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/releases\"\u003eaiohttp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.12.13\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed auto-created :py:class:\u003ccode\u003e~aiohttp.TCPConnector\u003c/code\u003e not using the session's event loop when :py:class:\u003ccode\u003e~aiohttp.ClientSession\u003c/code\u003e is created without an explicit connector -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11147\"\u003e#11147\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e3.12.12\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed cookie unquoting to properly handle octal escape sequences in cookie values (e.g., \u003ccode\u003e\\012\u003c/code\u003e for newline) by vendoring the correct \u003ccode\u003e_unquote\u003c/code\u003e implementation from Python's \u003ccode\u003ehttp.cookies\u003c/code\u003e module -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11173\"\u003e#11173\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCookie\u003c/code\u003e header parsing to treat attribute names as regular cookies per :rfc:\u003ccode\u003e6265#section-5.4\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11178\"\u003e#11178\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e3.12.11\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved SSL connection handling by changing the default \u003ccode\u003essl_shutdown_timeout\u003c/code\u003e\nfrom \u003ccode\u003e0.1\u003c/code\u003e to \u003ccode\u003e0\u003c/code\u003e seconds. SSL connections now use Python's default graceful\nshutdown during normal operation but are aborted immediately when the connector\nis closed, providing optimal behavior for both cases. Also added support for\n\u003ccode\u003essl_shutdown_timeout=0\u003c/code\u003e on all Python versions. Previously, this value was\nrejected on Python 3.11+ and ignored on earlier versions. Non-zero values on\nPython \u0026lt; 3.11 now trigger a \u003ccode\u003eRuntimeWarning\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst\"\u003eaiohttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.12.13 (2025-06-14)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed auto-created :py:class:\u003ccode\u003e~aiohttp.TCPConnector\u003c/code\u003e not using the session's event loop when :py:class:\u003ccode\u003e~aiohttp.ClientSession\u003c/code\u003e is created without an explicit connector -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11147\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.12.12 (2025-06-09)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed cookie unquoting to properly handle octal escape sequences in cookie values (e.g., \u003ccode\u003e\\012\u003c/code\u003e for newline) by vendoring the correct \u003ccode\u003e_unquote\u003c/code\u003e implementation from Python's \u003ccode\u003ehttp.cookies\u003c/code\u003e module -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11173\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCookie\u003c/code\u003e header parsing to treat attribute names as regular cookies per :rfc:\u003ccode\u003e6265#section-5.4\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11178\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.12.11 (2025-06-07)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2ff9b615c8bf0758b496b830438d8e0f11f4f515\"\u003e\u003ccode\u003e2ff9b61\u003c/code\u003e\u003c/a\u003e Release 3.12.13 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11214\"\u003e#11214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/fc9b7208836db502afa6d3d7ba99cb31ae972166\"\u003e\u003ccode\u003efc9b720\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11198\"\u003e#11198\u003c/a\u003e/b151d3fc backport][3.12] Fix auto-created TCPConnector not using s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2d4a28b344d58f1087da9dbcd7260b0bf401a9c6\"\u003e\u003ccode\u003e2d4a28b\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11192\"\u003e#11192\u003c/a\u003e/b888dc5c backport][3.12] Add warning to release notes about the qu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/bd374b177ba0d13734ab240ba4fd5d229ea8ba05\"\u003e\u003ccode\u003ebd374b1\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11193\"\u003e#11193\u003c/a\u003e/43ea3b1d backport][3.12] Pin CI Python version to 3.13.3 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/940480842baa3fb2dd6833cd879d5798be7750d2\"\u003e\u003ccode\u003e9404808\u003c/code\u003e\u003c/a\u003e Increment version to 3.12.13.dev0 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11184\"\u003e#11184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/a15febd4bd2c5d17a35aa11b00d12087e5089871\"\u003e\u003ccode\u003ea15febd\u003c/code\u003e\u003c/a\u003e Release 3.12.12 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11183\"\u003e#11183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/e2b24d791b7a3a3437e3f7744c6351f0a94953d9\"\u003e\u003ccode\u003ee2b24d7\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11178\"\u003e#11178\u003c/a\u003e/915338c7 backport][3.12] Fix cookie header parser ignoring reserve...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/608d8ff454e5d0b54dbc4045e8b61fb3b4acfd0f\"\u003e\u003ccode\u003e608d8ff\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11173\"\u003e#11173\u003c/a\u003e/85b0df43 backport][3.12] Fix cookie unquoting regression (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11179\"\u003e#11179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2a7ed29e3d92bc52502ff04fc80a38b54635165b\"\u003e\u003ccode\u003e2a7ed29\u003c/code\u003e\u003c/a\u003e Increment version to 3.12.12.dev0 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11159\"\u003e#11159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/f9621dc9c9f902f83f20725d9f4ae09a63590516\"\u003e\u003ccode\u003ef9621dc\u003c/code\u003e\u003c/a\u003e Release 3.12.11 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11157\"\u003e#11157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aio-libs/aiohttp/compare/v3.12.6...v3.12.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gidgethub` from 5.3.0 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.29.1 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.30.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew beta feature:\u003c/strong\u003e Sentry logs for Loguru (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4445\"\u003e#4445\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now capture Loguru logs and send them to Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.30.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNew beta feature:\u003c/strong\u003e Sentry logs for Loguru (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4445\"\u003e#4445\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.29.1...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.8.2 to 7.9.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.9.1 — 2025-06-13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u0026quot;no-ctracer\u0026quot; warning is not issued for Python pre-release versions.\nCoverage doesn't ship compiled wheels for those versions, so this was far too\nnoisy.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Python 3.14+, the \u0026quot;sysmon\u0026quot; core is now the default if it's supported for\nyour configuration.  Plugins and dynamic contexts are still not supported\nwith it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-9-0:\u003c/p\u003e\n\u003ch2\u003eVersion 7.9.0 — 2025-06-11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a \u003ccode\u003e[run] core\u003c/code\u003e configuration setting to specify the measurement core,\nwhich was previously only available through the COVERAGE_CORE environment\nvariable. Finishes \u003ccode\u003eissue 1746\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed incorrect rendering of f-strings with doubled braces, closing \u003ccode\u003eissue 1980\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf the C tracer core can't be imported, a warning (\u0026quot;no-ctracer\u0026quot;) is issued\nwith the reason.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe C tracer core extension module now conforms to \u003ccode\u003ePEP 489\u003c/code\u003e\u003cem\u003e, closing \u003ccode\u003eissue 1977\u003c/code\u003e\u003c/em\u003e.  Thanks, \u003ccode\u003eAdam Turner \u0026lt;pull 1978_\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a \u0026quot;ValueError: min() arg is an empty sequence\u0026quot; error caused by strange\nempty modules, found by \u003ccode\u003eoss-fuzz\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1746: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1746\"\u003enedbat/coveragepy#1746\u003c/a\u003e\n.. _issue 1977: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1977\"\u003enedbat/coveragepy#1977\u003c/a\u003e\n.. _pull 1978: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/1978\"\u003enedbat/coveragepy#1978\u003c/a\u003e\n.. _issue 1980: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1980\"\u003enedbat/coveragepy#1980\u003c/a\u003e\n.. _PEP 489: \u003ca href=\"https://peps.python.org/pep-0489\"\u003ehttps://peps.python.org/pep-0489\u003c/a\u003e\n.. _oss-fuzz: \u003ca href=\"https://google.github.io/oss-fuzz/\"\u003ehttps://google.github.io/oss-fuzz/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-8-2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/4fa1b717978c2d9e40636a10363b618e152f4c4e\"\u003e\u003ccode\u003e4fa1b71\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5cf757b42d1649ccbc74488471ab9270cb7d99f2\"\u003e\u003ccode\u003e5cf757b\u003c/code\u003e\u003c/a\u003e docs: prep for 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bea6204982b75f6a20f5afbf3534bd3776e126dd\"\u003e\u003ccode\u003ebea6204\u003c/code\u003e\u003c/a\u003e fix: better defaulting of core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/7795441563fb0afe9439a857a5e0df50336f73dd\"\u003e\u003ccode\u003e7795441\u003c/code\u003e\u003c/a\u003e fix: fewer warnings, default to sys.monitoring on 3.14+\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/18aa07456965c7d26e028aebaf825b96b7638d74\"\u003e\u003ccode\u003e18aa074\u003c/code\u003e\u003c/a\u003e fix: some custom builds don't have \u003cstrong\u003efile\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/8c5bf659f4b4412685a828c01870cfc9a23186ac\"\u003e\u003ccode\u003e8c5bf65\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/128c4f4e452f08e52fe1d6fbebb8392ae2dc7297\"\u003e\u003ccode\u003e128c4f4\u003c/code\u003e\u003c/a\u003e build: bump version to 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/452d86ffa16cd0c1b729c7d206f59bc1010aee94\"\u003e\u003ccode\u003e452d86f\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a670927ae6d248f369d54fbe22d9546b6a25c25e\"\u003e\u003ccode\u003ea670927\u003c/code\u003e\u003c/a\u003e docs: prep for 7.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3b0cb870f6abac8e4a7607094c467a7d766a44f4\"\u003e\u003ccode\u003e3b0cb87\u003c/code\u003e\u003c/a\u003e build: windows 3.14 is fixed\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.8.2...7.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/python/blurb_it/pull/426","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/python%2Fblurb_it/issues/426","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/426/packages"},{"uuid":"2575458779","node_id":"PR_kwDOEmkS086ZgmHb","number":485,"state":"closed","title":"pip(deps): bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":["stale","dependabot-bump","pip-bump"],"assignees":["seven7ty"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-07-18T03:18:01.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-07T12:45:54.000Z","updated_at":"2025-07-18T03:18:01.000Z","time_to_close":3508327,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"pip(deps)","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n## Summary by Sourcery\n\nBump gidgethub from v5.3.0 to v5.4.0 to pick up bug fixes, Python compatibility updates, and build system improvements\n\nBug Fixes:\n- Fix broken links and dead URLs in documentation\n\nEnhancements:\n- Add support for Python 3.12 and 3.13 while dropping end-of-life Python 3.7\n- Make GitHubAPI.getiter() iterative instead of recursive\n- Allow configuring JWT expiration via an expiration parameter in apps.get_jwt()\n\nBuild:\n- Replace flit with flit_core in the build system\n- Pin a maximum version for flit_core\n\nChores:\n- Update gidgethub dependency to 5.4.0 in requirements.txt","html_url":"https://github.com/statch/gitbot/pull/485","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/statch%2Fgitbot/issues/485","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/485/packages"}],"issue_packages":[{"old_version":"5.3.0","new_version":"5.4.0","update_type":"minor","path":null,"pr_created_at":"2025-08-29T00:03:34.000Z","version_change":"5.3.0 → 5.4.0","issue":{"uuid":"2783265826","node_id":"PR_kwDOAxHU6M6l5UQi","number":8851,"state":"open","title":"Bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":["dependency update"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-29T00:03:34.000Z","updated_at":"2025-08-29T00:03:35.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/Harmon758/Harmonbot/pull/8851","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Harmon758%2FHarmonbot/issues/8851","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8851/packages"}},{"old_version":"5.3.0","new_version":"5.4.0","update_type":"minor","path":null,"pr_created_at":"2025-08-22T14:23:47.000Z","version_change":"5.3.0 → 5.4.0","issue":{"uuid":"2766483406","node_id":"PR_kwDOPfXSXM6k5S_O","number":47,"state":"closed","title":"Bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-08-22T14:24:00.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-22T14:23:47.000Z","updated_at":"2025-08-22T14:24:00.000Z","time_to_close":13,"merged_at":"2025-08-22T14:23:59.000Z","merged_by":"github-actions[bot]","closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/gagan-chawla/aiohttp/pull/47","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gagan-chawla%2Faiohttp/issues/47","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/47/packages"}},{"old_version":"5.3.0","new_version":"5.4.0","update_type":"minor","path":"/.github/workflows/requirements","pr_created_at":"2025-07-01T11:21:33.000Z","version_change":"5.3.0 → 5.4.0","issue":{"uuid":"2632082477","node_id":"PR_kwDOJ3NBFM6c4mQt","number":149,"state":"open","title":"Bump gidgethub from 5.3.0 to 5.4.0 in /.github/workflows/requirements","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T11:21:33.000Z","updated_at":"2025-07-01T11:21:33.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":"/.github/workflows/requirements","ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/LLNL/hubcast/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/LLNL%2Fhubcast/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"}},{"old_version":"5.3.0","new_version":"5.4.0","update_type":"minor","path":null,"pr_created_at":"2025-07-01T07:00:30.000Z","version_change":"5.3.0 → 5.4.0","issue":{"uuid":"2631157973","node_id":"PR_kwDOCNhlp86c1EjV","number":426,"state":"closed","title":"Bump the pip group with 6 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":["ezio-melotti"],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-07-01T07:05:47.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-07-01T07:00:30.000Z","updated_at":"2025-07-01T07:05:47.000Z","time_to_close":317,"merged_at":"2025-07-01T07:05:47.000Z","merged_by":"hugovk","closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip","update_count":6,"packages":[{"name":"aiohttp","old_version":"3.12.6","new_version":"3.12.13","repository_url":"https://github.com/aio-libs/aiohttp"},{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"},{"name":"sentry-sdk","old_version":"2.29.1","new_version":"2.32.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"coverage","old_version":"7.8.2","new_version":"7.9.1","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"pytest","old_version":"8.3.5","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip group with 6 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiohttp](https://github.com/aio-libs/aiohttp) | `3.12.6` | `3.12.13` |\n| [gidgethub](https://github.com/brettcannon/gidgethub) | `5.3.0` | `5.4.0` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.29.1` | `2.32.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.8.2` | `7.9.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `6.2.1` |\n\nUpdates `aiohttp` from 3.12.6 to 3.12.13\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/releases\"\u003eaiohttp's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.12.13\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed auto-created :py:class:\u003ccode\u003e~aiohttp.TCPConnector\u003c/code\u003e not using the session's event loop when :py:class:\u003ccode\u003e~aiohttp.ClientSession\u003c/code\u003e is created without an explicit connector -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11147\"\u003e#11147\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e3.12.12\u003c/h2\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed cookie unquoting to properly handle octal escape sequences in cookie values (e.g., \u003ccode\u003e\\012\u003c/code\u003e for newline) by vendoring the correct \u003ccode\u003e_unquote\u003c/code\u003e implementation from Python's \u003ccode\u003ehttp.cookies\u003c/code\u003e module -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11173\"\u003e#11173\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCookie\u003c/code\u003e header parsing to treat attribute names as regular cookies per :rfc:\u003ccode\u003e6265#section-5.4\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11178\"\u003e#11178\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch2\u003e3.12.11\u003c/h2\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImproved SSL connection handling by changing the default \u003ccode\u003essl_shutdown_timeout\u003c/code\u003e\nfrom \u003ccode\u003e0.1\u003c/code\u003e to \u003ccode\u003e0\u003c/code\u003e seconds. SSL connections now use Python's default graceful\nshutdown during normal operation but are aborted immediately when the connector\nis closed, providing optimal behavior for both cases. Also added support for\n\u003ccode\u003essl_shutdown_timeout=0\u003c/code\u003e on all Python versions. Previously, this value was\nrejected on Python 3.11+ and ignored on earlier versions. Non-zero values on\nPython \u0026lt; 3.11 now trigger a \u003ccode\u003eRuntimeWarning\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiohttp/blob/master/CHANGES.rst\"\u003eaiohttp's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.12.13 (2025-06-14)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed auto-created :py:class:\u003ccode\u003e~aiohttp.TCPConnector\u003c/code\u003e not using the session's event loop when :py:class:\u003ccode\u003e~aiohttp.ClientSession\u003c/code\u003e is created without an explicit connector -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11147\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.12.12 (2025-06-09)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed cookie unquoting to properly handle octal escape sequences in cookie values (e.g., \u003ccode\u003e\\012\u003c/code\u003e for newline) by vendoring the correct \u003ccode\u003e_unquote\u003c/code\u003e implementation from Python's \u003ccode\u003ehttp.cookies\u003c/code\u003e module -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11173\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed \u003ccode\u003eCookie\u003c/code\u003e header parsing to treat attribute names as regular cookies per :rfc:\u003ccode\u003e6265#section-5.4\u003c/code\u003e -- by :user:\u003ccode\u003ebdraco\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003e\u003cem\u003eRelated issues and pull requests on GitHub:\u003c/em\u003e\n:issue:\u003ccode\u003e11178\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003ch1\u003e3.12.11 (2025-06-07)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2ff9b615c8bf0758b496b830438d8e0f11f4f515\"\u003e\u003ccode\u003e2ff9b61\u003c/code\u003e\u003c/a\u003e Release 3.12.13 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11214\"\u003e#11214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/fc9b7208836db502afa6d3d7ba99cb31ae972166\"\u003e\u003ccode\u003efc9b720\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11198\"\u003e#11198\u003c/a\u003e/b151d3fc backport][3.12] Fix auto-created TCPConnector not using s...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2d4a28b344d58f1087da9dbcd7260b0bf401a9c6\"\u003e\u003ccode\u003e2d4a28b\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11192\"\u003e#11192\u003c/a\u003e/b888dc5c backport][3.12] Add warning to release notes about the qu...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/bd374b177ba0d13734ab240ba4fd5d229ea8ba05\"\u003e\u003ccode\u003ebd374b1\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11193\"\u003e#11193\u003c/a\u003e/43ea3b1d backport][3.12] Pin CI Python version to 3.13.3 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11194\"\u003e#11194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/940480842baa3fb2dd6833cd879d5798be7750d2\"\u003e\u003ccode\u003e9404808\u003c/code\u003e\u003c/a\u003e Increment version to 3.12.13.dev0 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11184\"\u003e#11184\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/a15febd4bd2c5d17a35aa11b00d12087e5089871\"\u003e\u003ccode\u003ea15febd\u003c/code\u003e\u003c/a\u003e Release 3.12.12 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11183\"\u003e#11183\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/e2b24d791b7a3a3437e3f7744c6351f0a94953d9\"\u003e\u003ccode\u003ee2b24d7\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11178\"\u003e#11178\u003c/a\u003e/915338c7 backport][3.12] Fix cookie header parser ignoring reserve...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/608d8ff454e5d0b54dbc4045e8b61fb3b4acfd0f\"\u003e\u003ccode\u003e608d8ff\u003c/code\u003e\u003c/a\u003e [PR \u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11173\"\u003e#11173\u003c/a\u003e/85b0df43 backport][3.12] Fix cookie unquoting regression (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11179\"\u003e#11179\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/2a7ed29e3d92bc52502ff04fc80a38b54635165b\"\u003e\u003ccode\u003e2a7ed29\u003c/code\u003e\u003c/a\u003e Increment version to 3.12.12.dev0 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11159\"\u003e#11159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiohttp/commit/f9621dc9c9f902f83f20725d9f4ae09a63590516\"\u003e\u003ccode\u003ef9621dc\u003c/code\u003e\u003c/a\u003e Release 3.12.11 (\u003ca href=\"https://redirect.github.com/aio-libs/aiohttp/issues/11157\"\u003e#11157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/aio-libs/aiohttp/compare/v3.12.6...v3.12.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `gidgethub` from 5.3.0 to 5.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sentry-sdk` from 2.29.1 to 2.32.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/releases\"\u003esentry-sdk's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.30.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew beta feature:\u003c/strong\u003e Sentry logs for Loguru (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4445\"\u003e#4445\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now capture Loguru logs and send them to Sentry.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md\"\u003esentry-sdk's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003efeat(sessions): Add top-level start- and end session methods (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4474\"\u003e#4474\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(openai-agents): Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(integrations/ray): Correctly pass keyword arguments to ray.remote function (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4430\"\u003e#4430\u003c/a\u003e) by \u003ca href=\"https://github.com/svartalf\"\u003e\u003ccode\u003e@​svartalf\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in middleware (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4074\"\u003e#4074\u003c/a\u003e) by \u003ca href=\"https://github.com/vrslev\"\u003e\u003ccode\u003e@​vrslev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.31.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eNew Integration (BETA):\u003c/strong\u003e Add support for \u003ccode\u003eopenai-agents\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4437\"\u003e#4437\u003c/a\u003e) by \u003ca href=\"https://github.com/antonpirker\"\u003e\u003ccode\u003e@​antonpirker\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eWe can now instrument AI agents that are created with the \u003ca href=\"https://openai.github.io/openai-agents-python/\"\u003eOpenAI Agents SDK\u003c/a\u003e out of the box.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eimport sentry_sdk\nfrom sentry_sdk.integrations.openai_agents import OpenAIAgentsIntegration\n\u003ch1\u003eAdd the OpenAIAgentsIntegration to your sentry_sdk.init call:\u003c/h1\u003e\n\u003cp\u003esentry_sdk.init(\u003cbr /\u003e\ndsn=\u0026quot;...\u0026quot;,\u003cbr /\u003e\nintegrations=[\u003cbr /\u003e\nOpenAIAgentsIntegration(),\u003cbr /\u003e\n]\u003cbr /\u003e\n)\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cp\u003eFor more information see the \u003ca href=\"https://docs.sentry.io/platforms/python/integrations/openai-agents/\"\u003eOpenAI Agents integrations documentation\u003c/a\u003e.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eLogs: Add support for \u003ccode\u003edict\u003c/code\u003e arguments (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4478\"\u003e#4478\u003c/a\u003e) by \u003ca href=\"https://github.com/AbhiPrasad\"\u003e\u003ccode\u003e@​AbhiPrasad\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Cursor generated rules (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4493\"\u003e#4493\u003c/a\u003e) by \u003ca href=\"https://github.com/sl0thentr0py\"\u003e\u003ccode\u003e@​sl0thentr0py\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGreatly simplify Langchain integrations \u003ccode\u003e_wrap_configure\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4479\"\u003e#4479\u003c/a\u003e) by \u003ca href=\"https://github.com/szokeasaurusrex\"\u003e\u003ccode\u003e@​szokeasaurusrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Remove tracerite pin (almost) (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4504\"\u003e#4504\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(profiling): Ensure profiler thread exits when needed (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4497\"\u003e#4497\u003c/a\u003e) by \u003ca href=\"https://github.com/Zylphrex\"\u003e\u003ccode\u003e@​Zylphrex\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(ci): Do not install newest \u003ccode\u003etracerite\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4494\"\u003e#4494\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix(scope): Handle token reset \u003ccode\u003eLookupError\u003c/code\u003es gracefully (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4481\"\u003e#4481\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Tox update (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4509\"\u003e#4509\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Upper bound on fakeredis on old Python versions (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4482\"\u003e#4482\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTests: Regenerate tox (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4457\"\u003e#4457\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.30.0\u003c/h2\u003e\n\u003ch3\u003eVarious fixes \u0026amp; improvements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eNew beta feature:\u003c/strong\u003e Sentry logs for Loguru (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4445\"\u003e#4445\u003c/a\u003e) by \u003ca href=\"https://github.com/sentrivana\"\u003e\u003ccode\u003e@​sentrivana\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/4b022dc731aa10e8cdb1cc8342c06374b226b6f4\"\u003e\u003ccode\u003e4b022dc\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into release/2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/2634a523b3416748cf952bc517641594b9b40bac\"\u003e\u003ccode\u003e2634a52\u003c/code\u003e\u003c/a\u003e Pin zope.event (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4531\"\u003e#4531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/c815a3245d10e45bebee5b47292deec438a4d4d2\"\u003e\u003ccode\u003ec815a32\u003c/code\u003e\u003c/a\u003e updated changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/bca8816ac1f84fe4304682bd6de173fbf0c005a3\"\u003e\u003ccode\u003ebca8816\u003c/code\u003e\u003c/a\u003e release: 2.32.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/546ce1f71023b651860d6b576024b9d93b4c9ab8\"\u003e\u003ccode\u003e546ce1f\u003c/code\u003e\u003c/a\u003e Set tool span to failed if an error is raised in the tool (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4527\"\u003e#4527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/ab2e3f08b600b22a95c3313eddd66f733e2d133c\"\u003e\u003ccode\u003eab2e3f0\u003c/code\u003e\u003c/a\u003e fix(integrations/ray): Correctly pass keyword arguments to ray.remote functio...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/7804260fbf3ed8f797af95d2c0bdfcfeb85b0605\"\u003e\u003ccode\u003e7804260\u003c/code\u003e\u003c/a\u003e fix(langchain): Make \u003ccode\u003espan_map\u003c/code\u003e an instance variable (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4476\"\u003e#4476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/0a2d8585f18f1d135d1f04624b702ef46fd119bb\"\u003e\u003ccode\u003e0a2d858\u003c/code\u003e\u003c/a\u003e fix(langchain): Ensure no duplicate \u003ccode\u003eSentryLangchainCallback\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/getsentry/sentry-python/issues/4485\"\u003e#4485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/dae02180dfb095cdbd8ed7e81544ef048482d70b\"\u003e\u003ccode\u003edae0218\u003c/code\u003e\u003c/a\u003e fix(Litestar): Apply \u003ccode\u003efailed_request_status_codes\u003c/code\u003e to exceptions raised in mi...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/sentry-python/commit/65d31af4ff9b93cddf12d043fe9d631e3c6c85a4\"\u003e\u003ccode\u003e65d31af\u003c/code\u003e\u003c/a\u003e Merge branch 'release/2.31.0'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/getsentry/sentry-python/compare/2.29.1...2.32.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.8.2 to 7.9.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.9.1 — 2025-06-13\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe \u0026quot;no-ctracer\u0026quot; warning is not issued for Python pre-release versions.\nCoverage doesn't ship compiled wheels for those versions, so this was far too\nnoisy.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Python 3.14+, the \u0026quot;sysmon\u0026quot; core is now the default if it's supported for\nyour configuration.  Plugins and dynamic contexts are still not supported\nwith it.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-9-0:\u003c/p\u003e\n\u003ch2\u003eVersion 7.9.0 — 2025-06-11\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a \u003ccode\u003e[run] core\u003c/code\u003e configuration setting to specify the measurement core,\nwhich was previously only available through the COVERAGE_CORE environment\nvariable. Finishes \u003ccode\u003eissue 1746\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed incorrect rendering of f-strings with doubled braces, closing \u003ccode\u003eissue 1980\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf the C tracer core can't be imported, a warning (\u0026quot;no-ctracer\u0026quot;) is issued\nwith the reason.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eThe C tracer core extension module now conforms to \u003ccode\u003ePEP 489\u003c/code\u003e\u003cem\u003e, closing \u003ccode\u003eissue 1977\u003c/code\u003e\u003c/em\u003e.  Thanks, \u003ccode\u003eAdam Turner \u0026lt;pull 1978_\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a \u0026quot;ValueError: min() arg is an empty sequence\u0026quot; error caused by strange\nempty modules, found by \u003ccode\u003eoss-fuzz\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1746: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1746\"\u003enedbat/coveragepy#1746\u003c/a\u003e\n.. _issue 1977: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1977\"\u003enedbat/coveragepy#1977\u003c/a\u003e\n.. _pull 1978: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/1978\"\u003enedbat/coveragepy#1978\u003c/a\u003e\n.. _issue 1980: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1980\"\u003enedbat/coveragepy#1980\u003c/a\u003e\n.. _PEP 489: \u003ca href=\"https://peps.python.org/pep-0489\"\u003ehttps://peps.python.org/pep-0489\u003c/a\u003e\n.. _oss-fuzz: \u003ca href=\"https://google.github.io/oss-fuzz/\"\u003ehttps://google.github.io/oss-fuzz/\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-8-2:\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/4fa1b717978c2d9e40636a10363b618e152f4c4e\"\u003e\u003ccode\u003e4fa1b71\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5cf757b42d1649ccbc74488471ab9270cb7d99f2\"\u003e\u003ccode\u003e5cf757b\u003c/code\u003e\u003c/a\u003e docs: prep for 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bea6204982b75f6a20f5afbf3534bd3776e126dd\"\u003e\u003ccode\u003ebea6204\u003c/code\u003e\u003c/a\u003e fix: better defaulting of core\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/7795441563fb0afe9439a857a5e0df50336f73dd\"\u003e\u003ccode\u003e7795441\u003c/code\u003e\u003c/a\u003e fix: fewer warnings, default to sys.monitoring on 3.14+\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/18aa07456965c7d26e028aebaf825b96b7638d74\"\u003e\u003ccode\u003e18aa074\u003c/code\u003e\u003c/a\u003e fix: some custom builds don't have \u003cstrong\u003efile\u003c/strong\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/8c5bf659f4b4412685a828c01870cfc9a23186ac\"\u003e\u003ccode\u003e8c5bf65\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/128c4f4e452f08e52fe1d6fbebb8392ae2dc7297\"\u003e\u003ccode\u003e128c4f4\u003c/code\u003e\u003c/a\u003e build: bump version to 7.9.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/452d86ffa16cd0c1b729c7d206f59bc1010aee94\"\u003e\u003ccode\u003e452d86f\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a670927ae6d248f369d54fbe22d9546b6a25c25e\"\u003e\u003ccode\u003ea670927\u003c/code\u003e\u003c/a\u003e docs: prep for 7.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3b0cb870f6abac8e4a7607094c467a7d766a44f4\"\u003e\u003ccode\u003e3b0cb87\u003c/code\u003e\u003c/a\u003e build: windows 3.14 is fixed\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.8.2...7.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 8.3.5 to 8.4.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest/releases\"\u003epytest's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.1 (2025-06-17)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13461\"\u003e#13461\u003c/a\u003e: Corrected \u003ccode\u003e_pytest.terminal.TerminalReporter.isatty\u003c/code\u003e to support\nbeing called as a method. Before it was just a boolean which could\nbreak correct code when using \u003ccode\u003e-o log_cli=true\u003c/code\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13477\"\u003e#13477\u003c/a\u003e: Reintroduced \u003ccode\u003epytest.PytestReturnNotNoneWarning\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which was removed by accident in pytest [8.4]{.title-ref}.\u003c/p\u003e\n\u003cp\u003eThis warning is raised when a test functions returns a value other than \u003ccode\u003eNone\u003c/code\u003e, which is often a mistake made by beginners.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ereturn-not-none\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13497\"\u003e#13497\u003c/a\u003e: Fixed compatibility with \u003ccode\u003eTwisted 25+\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e: Fixed outdated warning about \u003ccode\u003efaulthandler\u003c/code\u003e not working on Windows.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.0 (2025-06-02)\u003c/h1\u003e\n\u003ch2\u003eRemovals and backward incompatible breaking changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11372\"\u003e#11372\u003c/a\u003e: Async tests will now fail, instead of warning+skipping, if you don't have any suitable plugin installed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12346\"\u003e#12346\u003c/a\u003e: Tests will now fail, instead of raising a warning, if they return any value other than None.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12874\"\u003e#12874\u003c/a\u003e: We dropped support for Python 3.8 following its end of life (2024-10-07).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12960\"\u003e#12960\u003c/a\u003e: Test functions containing a yield now cause an explicit error. They have not been run since pytest 4.0, and were previously marked as an expected failure and deprecation warning.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003ethe docs \u0026lt;yield tests deprecated\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations (removal in next major release)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10839\"\u003e#10839\u003c/a\u003e: Requesting an asynchronous fixture without a [pytest_fixture_setup]{.title-ref} hook that resolves it will now give a DeprecationWarning. This most commonly happens if a sync test requests an async fixture. This should have no effect on a majority of users with async tests or fixtures using async pytest plugins, but may affect non-standard hook setups or \u003ccode\u003eautouse=True\u003c/code\u003e. For guidance on how to work around this warning see \u003ccode\u003esync-test-async-fixture\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11538\"\u003e#11538\u003c/a\u003e: Added \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} as an equivalent to \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} for expecting \u003ccode\u003eExceptionGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;exc\u0026quot;}. Also adds \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} which is now the logic behind \u003ccode\u003epytest.raises\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and used as parameter to \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;}. \u003ccode\u003eRaisesGroup\u003c/code\u003e includes the ability to specify multiple different expected exceptions, the structure of nested exception groups, and flags for emulating \u003ccode\u003eexcept* \u0026lt;except_star\u0026gt;\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}. See \u003ccode\u003eassert-matching-exception-groups\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} and docstrings for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12081\"\u003e#12081\u003c/a\u003e: Added \u003ccode\u003ecapteesys\u003c/code\u003e{.interpreted-text role=\u0026quot;fixture\u0026quot;} to capture AND pass output to next handler set by \u003ccode\u003e--capture=\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12504\"\u003e#12504\u003c/a\u003e: \u003ccode\u003epytest.mark.xfail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now accepts \u003ccode\u003epytest.RaisesGroup\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} for the \u003ccode\u003eraises\u003c/code\u003e parameter when you expect an exception group. You can also pass a \u003ccode\u003epytest.RaisesExc\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} if you e.g. want to make use of the \u003ccode\u003echeck\u003c/code\u003e parameter.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12713\"\u003e#12713\u003c/a\u003e: New [--force-short-summary]{.title-ref} option to force condensed summary output regardless of verbosity level.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e... (truncated)\u003c/p\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8d99211f0ce3927eb7ee579f7b4f969da06dc787\"\u003e\u003ccode\u003e8d99211\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/5dc5880715633c97310c0593f0ae356de27fa933\"\u003e\u003ccode\u003e5dc5880\u003c/code\u003e\u003c/a\u003e docs: update pytest.ini addopts example to use separate -p entries (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13529\"\u003e#13529\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/d0c7ed0bfae5a5f1f9153cd1e464a421d701e925\"\u003e\u003ccode\u003ed0c7ed0\u003c/code\u003e\u003c/a\u003e Reintroduce PytestReturnNotNoneWarning (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13495\"\u003e#13495\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13527\"\u003e#13527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a1b3a7879589eb437e4fd97c169b228c3ed58c63\"\u003e\u003ccode\u003ea1b3a78\u003c/code\u003e\u003c/a\u003e Fix compatibility with Twisted 25 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13502\"\u003e#13502\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4c161aba8ecaab9940040702369025595d26564c\"\u003e\u003ccode\u003e4c161ab\u003c/code\u003e\u003c/a\u003e pytester: avoid unraisableexception gc collects in inline runs to speed up te...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/a86ee09291f913b36fdeec14c42356515b91c979\"\u003e\u003ccode\u003ea86ee09\u003c/code\u003e\u003c/a\u003e Fix typo in parametrize.rst (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13514\"\u003e#13514\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13516\"\u003e#13516\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/1a0581b0227fa07afd1f2c4c6215aec3862cf1ab\"\u003e\u003ccode\u003e1a0581b\u003c/code\u003e\u003c/a\u003e Remove outdated warning about faulthandler_timeout on Windows (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13492\"\u003e#13492\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13493\"\u003e#13493\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/4e631a71484c2fa49e3fd9f884546af411a4888d\"\u003e\u003ccode\u003e4e631a7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13486\"\u003e#13486\u003c/a\u003e from hosmir/fixtypo (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13487\"\u003e#13487\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b49745ec529f06edfbbe531b766839763b2be3c2\"\u003e\u003ccode\u003eb49745e\u003c/code\u003e\u003c/a\u003e fix: support TerminalReporter.isatty being called (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13462\"\u003e#13462\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13483\"\u003e#13483\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/cc5ceed916d0c63696da33c67e035917194a4e87\"\u003e\u003ccode\u003ecc5ceed\u003c/code\u003e\u003c/a\u003e RELEASING: remove pytest mailing list (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13472\"\u003e#13472\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13473\"\u003e#13473\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.5...8.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 6.1.1 to 6.2.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-cov/blob/master/CHANGELOG.rst\"\u003epytest-cov's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.2.1 (2025-06-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded a version requirement for pytest's pluggy dependency (1.2.0, released 2023-06-21) that has the required new-style hookwrapper API.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved deprecated license classifier (packaging).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDisabled coverage warnings in two more situations where they have no value:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;module-not-measured\u0026quot; in workers\u003c/li\u003e\n\u003cli\u003e\u0026quot;already-imported\u0026quot; in subprocesses\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.2.0 (2025-06-11)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eThe plugin now adds 3 rules in the filter warnings configuration to prevent common coverage warnings being raised as obscure errors::\u003c/p\u003e\n\u003cp\u003edefault:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\nonce::PytestCovWarning\nonce::CoverageWarning\u003c/p\u003e\n\u003cp\u003eThis fixes most of the bad interactions that are occurring on pytest 8.4 with \u003ccode\u003efilterwarnings=error\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe plugin will check if there already matching rules for the 3 categories\n(\u003ccode\u003eResourceWarning\u003c/code\u003e, \u003ccode\u003ePytestCovWarning\u003c/code\u003e, \u003ccode\u003eCoverageWarning\u003c/code\u003e) and message (\u003ccode\u003eunclosed database in \u0026lt;sqlite3.Connection object at\u003c/code\u003e) before adding the filters.\u003c/p\u003e\n\u003cp\u003eThis means you can have this in your pytest configuration for complete oblivion (not recommended, if that is not clear)::\u003c/p\u003e\n\u003cp\u003efilterwarnings = [\n\u0026quot;error\u0026quot;,\n\u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot;,\n\u0026quot;ignore::PytestCovWarning\u0026quot;,\n\u0026quot;ignore::CoverageWarning\u0026quot;,\n]\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/55dbe43f04f839b760ea346e560276d641998c77\"\u003e\u003ccode\u003e55dbe43\u003c/code\u003e\u003c/a\u003e Bump version: 6.2.0 → 6.2.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d17e9b765e9832e70fe8101daa2f5f42ce447cc2\"\u003e\u003ccode\u003ed17e9b7\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8964ab7595dd10748cad66376289476049340ea4\"\u003e\u003ccode\u003e8964ab7\u003c/code\u003e\u003c/a\u003e Add a note for this warning disable.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/e932e41e50f37d03a4d600084411661bc1f08ab8\"\u003e\u003ccode\u003ee932e41\u003c/code\u003e\u003c/a\u003e Prevent unimported warnings @ pytest-xdist workers\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/573379ba34539db32cb3a43222f33b7c304af34a\"\u003e\u003ccode\u003e573379b\u003c/code\u003e\u003c/a\u003e Bring pytest-cov's suprocess management in line with coverage's process_start...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f1884e854f2687ccfe36747a11e7f3352f168f90\"\u003e\u003ccode\u003ef1884e8\u003c/code\u003e\u003c/a\u003e Fix xdist pin.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/512c6699010cc0d8145f1f926d876cafba840015\"\u003e\u003ccode\u003e512c669\u003c/code\u003e\u003c/a\u003e Added minium version requirements for pluggin (for new-style hookwrappers). P...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/629ba644a56148d09fe0f2c20602681bc20027a7\"\u003e\u003ccode\u003e629ba64\u003c/code\u003e\u003c/a\u003e Remove deprecated license classifier.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/dca5723086a00e8c145a84761b0ce810a8079892\"\u003e\u003ccode\u003edca5723\u003c/code\u003e\u003c/a\u003e Bump version: 6.1.1 → 6.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f69166a08444db4736c611cdc7746eeac9a2f158\"\u003e\u003ccode\u003ef69166a\u003c/code\u003e\u003c/a\u003e Also trigger the sqlite warning.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.1.1...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore \u003cdependency name\u003e major version` will close this group update PR and stop Dependabot creating any more for the specific dependency's major version (unless you unignore this specific dependency's major version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e minor version` will close this group update PR and stop Dependabot creating any more for the specific dependency's minor version (unless you unignore this specific dependency's minor version or upgrade to it yourself)\n- `@dependabot ignore \u003cdependency name\u003e` will close this group update PR and stop Dependabot creating any more for the specific dependency (unless you unignore this specific dependency or upgrade to it yourself)\n- `@dependabot unignore \u003cdependency name\u003e` will remove all of the ignore conditions of the specified dependency\n- `@dependabot unignore \u003cdependency name\u003e \u003cignore condition\u003e` will remove the ignore condition of the specified dependency and ignore conditions\n\n\n\u003c/details\u003e","html_url":"https://github.com/python/blurb_it/pull/426","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/python%2Fblurb_it/issues/426","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/426/packages"}},{"old_version":"5.3.0","new_version":"5.4.0","update_type":"minor","path":null,"pr_created_at":"2025-06-07T12:45:54.000Z","version_change":"5.3.0 → 5.4.0","issue":{"uuid":"2575458779","node_id":"PR_kwDOEmkS086ZgmHb","number":485,"state":"closed","title":"pip(deps): bump gidgethub from 5.3.0 to 5.4.0","user":"dependabot[bot]","labels":["stale","dependabot-bump","pip-bump"],"assignees":["seven7ty"],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2025-07-18T03:18:01.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-06-07T12:45:54.000Z","updated_at":"2025-07-18T03:18:01.000Z","time_to_close":3508327,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"pip(deps)","packages":[{"name":"gidgethub","old_version":"5.3.0","new_version":"5.4.0","repository_url":"https://github.com/brettcannon/gidgethub"}],"path":null,"ecosystem":"pip"},"body":"Bumps [gidgethub](https://github.com/brettcannon/gidgethub) from 5.3.0 to 5.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/brettcannon/gidgethub/releases\"\u003egidgethub's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix broken links in docs by \u003ca href=\"https://github.com/Mariatta\"\u003e\u003ccode\u003e@​Mariatta\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/203\"\u003egidgethub/gidgethub#203\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace flit by flit_core in build-system by \u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix URLs by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/208\"\u003egidgethub/gidgethub#208\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.12-3.13 and drop EOL 3.7 by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/209\"\u003egidgethub/gidgethub#209\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate changelog by \u003ca href=\"https://github.com/hugovk\"\u003e\u003ccode\u003e@​hugovk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/212\"\u003egidgethub/gidgethub#212\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSet a maximum version of flit_core for build requirements by \u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd expiration parameter to apps.get_jwt by \u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative by \u003ca href=\"https://github.com/brettcannon\"\u003e\u003ccode\u003e@​brettcannon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/219\"\u003egidgethub/gidgethub#219\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eNew Contributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tjni\"\u003e\u003ccode\u003e@​tjni\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/205\"\u003egidgethub/gidgethub#205\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/takluyver\"\u003e\u003ccode\u003e@​takluyver\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/211\"\u003egidgethub/gidgethub#211\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jjnesbitt\"\u003e\u003ccode\u003e@​jjnesbitt\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/gidgethub/gidgethub/pull/215\"\u003egidgethub/gidgethub#215\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\"\u003ehttps://github.com/gidgethub/gidgethub/compare/v5.3.0...v5.4.0\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/gidgethub/gidgethub/blob/main/docs/changelog.rst\"\u003egidgethub's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e5.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eMake :meth:\u003ccode\u003egidgethub.abc.GitHubAPI.getiter\u003c/code\u003e be iterative instead of\nrecursive\n(\u003ccode\u003ePR [#219](https://github.com/brettcannon/gidgethub/issues/219) \u0026lt;https://github.com/gidgethub/gidgethub/pull/219\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e:meth:\u003ccode\u003egidgethub.apps.get_jwt\u003c/code\u003e now accepts an \u003ccode\u003eexpiration\u003c/code\u003e parameter to\nconfigure JWT token expiration time\n(\u003ccode\u003ePR [#215](https://github.com/brettcannon/gidgethub/issues/215) \u0026lt;https://github.com/gidgethub/gidgethub/pull/215\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdd support for Python 3.12-3.13 and drop EOL Python 3.7\n(\u003ccode\u003ePR [#209](https://github.com/brettcannon/gidgethub/issues/209) \u0026lt;https://github.com/gidgethub/gidgethub/pull/209\u0026gt;\u003c/code\u003e_)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003c/details\u003e\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/5aee661adf50aa398548bbb5ef17e1674db73c42\"\u003e\u003ccode\u003e5aee661\u003c/code\u003e\u003c/a\u003e Prepare v5.4.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/4d30eb945988fd775a3402c57eaee0f64d9a63d4\"\u003e\u003ccode\u003e4d30eb9\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003egidgethub.abc.GitHubAPI.getiter()\u003c/code\u003e iterative (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/ab4fadb3b7c62f09bb9271a15091abef3db81a89\"\u003e\u003ccode\u003eab4fadb\u003c/code\u003e\u003c/a\u003e Add expiration parameter to apps.get_jwt (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/a47ead1640070be4ec15b3d8118af0ea0d74d2ca\"\u003e\u003ccode\u003ea47ead1\u003c/code\u003e\u003c/a\u003e Set a maximum version of flit_core for build requirements (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7ec51fce1295bc44a9c7593b8a1a92d338ef3d5b\"\u003e\u003ccode\u003e7ec51fc\u003c/code\u003e\u003c/a\u003e Update changelog (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/b6dcb777344eb6eeefd2bb65c6afc67376b9a5fa\"\u003e\u003ccode\u003eb6dcb77\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13 and drop EOL 3.7 (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/209\"\u003e#209\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/dac0359b87ee1514821b76f921112e799103102f\"\u003e\u003ccode\u003edac0359\u003c/code\u003e\u003c/a\u003e Create FUNDING.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7f8cec45922056a38c51ece276844a4bc028e6f5\"\u003e\u003ccode\u003e7f8cec4\u003c/code\u003e\u003c/a\u003e Fix URLs (\u003ca href=\"https://redirect.github.com/brettcannon/gidgethub/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/27adeae0d6645fb98fa3dd02a53191379ce1ef1b\"\u003e\u003ccode\u003e27adeae\u003c/code\u003e\u003c/a\u003e Fix dead URL\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gidgethub/gidgethub/commit/7dcb5d96c62516903180ca743f055125fee57d8a\"\u003e\u003ccode\u003e7dcb5d9\u003c/code\u003e\u003c/a\u003e Fix a dead URL\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/brettcannon/gidgethub/compare/v5.3.0...v5.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\n\n[![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=gidgethub\u0026package-manager=pip\u0026previous-version=5.3.0\u0026new-version=5.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e\n\n## Summary by Sourcery\n\nBump gidgethub from v5.3.0 to v5.4.0 to pick up bug fixes, Python compatibility updates, and build system improvements\n\nBug Fixes:\n- Fix broken links and dead URLs in documentation\n\nEnhancements:\n- Add support for Python 3.12 and 3.13 while dropping end-of-life Python 3.7\n- Make GitHubAPI.getiter() iterative instead of recursive\n- Allow configuring JWT expiration via an expiration parameter in apps.get_jwt()\n\nBuild:\n- Replace flit with flit_core in the build system\n- Pin a maximum version for flit_core\n\nChores:\n- Update gidgethub dependency to 5.4.0 in requirements.txt","html_url":"https://github.com/statch/gitbot/pull/485","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/statch%2Fgitbot/issues/485","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/485/packages"}}]}