{"id":11589,"name":"pytest-github-actions-annotate-failures","ecosystem":"pip","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures","issues_count":39,"created_at":"2025-06-06T23:05:08.857Z","updated_at":"2025-06-06T23:05:08.857Z","purl":"pkg:pypi/pytest-github-actions-annotate-failures","metadata":{"id":2885447,"name":"pytest-github-actions-annotate-failures","ecosystem":"pypi","description":"pytest plugin to annotate failed tests with a workflow command for GitHub Actions","homepage":null,"licenses":"MIT","normalized_licenses":["MIT"],"repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures","keywords_array":["ansible","testing","molecule","plugin"],"namespace":null,"versions_count":19,"first_release_published_at":"2020-05-08T17:23:55.000Z","latest_release_published_at":"2025-01-17T22:39:31.000Z","latest_release_number":"0.3.0","last_synced_at":"2025-06-07T08:31:05.734Z","created_at":"2022-04-10T12:19:47.616Z","updated_at":"2025-06-07T08:31:05.734Z","registry_url":"https://pypi.org/project/pytest-github-actions-annotate-failures/","install_command":"pip install pytest-github-actions-annotate-failures --index-url https://pypi.org/simple","documentation_url":"https://pytest-github-actions-annotate-failures.readthedocs.io/","metadata":{"funding":null,"documentation":null,"classifiers":["Development Status :: 5 - Production/Stable","Environment :: Console","Framework :: Pytest","Intended Audience :: Developers","Intended Audience :: Information Technology","Intended Audience :: System Administrators","License :: OSI Approved :: MIT License","Programming Language :: Python","Programming Language :: Python :: 3","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","Topic :: Software Development :: Quality Assurance","Topic :: Software Development :: Testing","Topic :: System :: Systems Administration","Topic :: Utilities"],"normalized_name":"pytest-github-actions-annotate-failures"},"repo_metadata":{"id":41450844,"uuid":"262356926","full_name":"pytest-dev/pytest-github-actions-annotate-failures","owner":"pytest-dev","description":"Pytest plugin to annotate failed tests with a workflow command for GitHub Actions","archived":false,"fork":false,"pushed_at":"2024-05-15T07:35:11.000Z","size":114,"stargazers_count":117,"open_issues_count":10,"forks_count":9,"subscribers_count":5,"default_branch":"main","last_synced_at":"2024-05-15T21:21:09.267Z","etag":null,"topics":["github-actions","pytest","python","testing","workflow"],"latest_commit_sha":null,"homepage":"https://pypi.org/project/pytest-github-actions-annotate-failures/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pytest-dev.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"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}},"created_at":"2020-05-08T15:16:53.000Z","updated_at":"2024-06-18T10:49:55.005Z","dependencies_parsed_at":"2023-07-14T03:08:49.842Z","dependency_job_id":"d53b67d5-6484-45d5-9311-f06fe06181da","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures","commit_stats":{"total_commits":119,"total_committers":12,"mean_commits":9.916666666666666,"dds":0.2184873949579832,"last_synced_commit":"d1a4b30d9d70438572b45137870e609d8d6e5f94"},"previous_names":["utgwkk/pytest-github-actions-annotate-failures"],"tags_count":18,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":215716046,"owners_count":15920463,"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":"pytest-dev","name":"pytest-dev","uuid":"8897583","kind":"organization","description":"","email":"pytest-dev@python.org","website":"https://pytest.org","location":"Everywhere","twitter":"pytestdotorg","company":null,"icon_url":"https://avatars.githubusercontent.com/u/8897583?v=4","repositories_count":71,"last_synced_at":"2024-04-16T03:10:10.569Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/pytest-dev","funding_links":[],"total_stars":30631,"followers":399,"following":0,"created_at":"2022-11-02T16:22:53.846Z","updated_at":"2024-04-16T03:10:29.747Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pytest-dev/repositories"},"tags":[{"name":"v0.2.0","sha":"1a87abb05e36128509b7ebd5987dbf8aad7ec47c","kind":"tag","published_at":"2023-05-04T11:02:27.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.2.0","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.2.0/manifests"},{"name":"v0.1.8","sha":"c65bfd25b2f52810e1c447c62951a7b2d21add36","kind":"tag","published_at":"2022-12-19T15:52:15.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.8","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.8/manifests"},{"name":"v0.1.7","sha":"dcf346b297c51f7663f8e6471333f38ffd1082ae","kind":"tag","published_at":"2022-07-02T02:30:20.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.7","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.7/manifests"},{"name":"v0.1.6","sha":"4677480f531260e2cd68bec44ddb2e801612aa4f","kind":"tag","published_at":"2021-12-08T12:29:50.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.6","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.6/manifests"},{"name":"v0.1.5","sha":"6cb5788e20f371dee106ab1983c039a195a05d41","kind":"tag","published_at":"2021-10-24T23:49:16.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.5","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.5/manifests"},{"name":"v0.1.4","sha":"e3f49824b1b3f886c71c064800b29ebf6da22a60","kind":"tag","published_at":"2021-10-24T14:24:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.4","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.4/manifests"},{"name":"v0.1.3","sha":"f7a88784c19c1426f53e79760dd808f5e85f1429","kind":"tag","published_at":"2021-07-31T03:18:53.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.3","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.3/manifests"},{"name":"v0.1.2","sha":"1529f5659a709a1b39ffc3484caa667da151cb2a","kind":"tag","published_at":"2021-03-21T06:21:57.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.2","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.2/manifests"},{"name":"v0.1.1","sha":"1b8a64884a55cf1fbfa77a8060a11dc853622277","kind":"tag","published_at":"2020-10-13T04:31:30.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.1","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"67dd5a5920df1c5bbb048c04401e7a278d67d538","kind":"tag","published_at":"2020-08-21T23:28:01.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.1.0","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.1.0/manifests"},{"name":"v0.0.8","sha":"3e7600b717726a9d582e8e0e4f5cebc1a1a6a240","kind":"tag","published_at":"2020-08-20T04:53:10.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.8","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.8/manifests"},{"name":"v0.0.7","sha":"0a68199eb41d63f625d0dd2ae3ff47550cc9d23b","kind":"tag","published_at":"2020-08-19T15:28:16.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.7","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.7/manifests"},{"name":"v0.0.6","sha":"62d19725f3209dc13107a864352e2a4c27bb5543","kind":"tag","published_at":"2020-07-30T14:37:12.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.6","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.6/manifests"},{"name":"v0.0.5","sha":"07187dffdda9a4b5718bca7f6fcde82e075e1ad7","kind":"tag","published_at":"2020-05-10T09:09:45.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.5","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.5/manifests"},{"name":"v0.0.4","sha":"dc553f49bb77577b2ef8e217370ca626863b85c8","kind":"tag","published_at":"2020-05-09T08:39:34.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.4","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.4/manifests"},{"name":"v0.0.3","sha":"46ef9b482380f07b76ebd9687df5f8cc1a4c550f","kind":"tag","published_at":"2020-05-09T06:59:07.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.3","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.3/manifests"},{"name":"v0.0.2","sha":"ede83f87862baf935161c026a548e8bff83f06e3","kind":"tag","published_at":"2020-05-08T17:25:14.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.2","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.2/manifests"},{"name":"v0.0.1","sha":"02d2f2e9b8aa6ae0fccb67c5f763e76b26b8be4d","kind":"tag","published_at":"2020-05-08T17:23:00.000Z","download_url":"https://codeload.github.com/pytest-dev/pytest-github-actions-annotate-failures/tar.gz/v0.0.1","html_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases/tag/v0.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pytest-dev%2Fpytest-github-actions-annotate-failures/tags/v0.0.1/manifests"}]},"repo_metadata_updated_at":"2024-09-07T08:37:54.968Z","dependent_packages_count":93,"downloads":900746,"downloads_period":"last-month","dependent_repos_count":573,"rankings":{"downloads":0.7453972762431674,"dependent_repos_count":0.5919889728288833,"dependent_packages_count":0.21695394383134586,"stargazers_count":null,"forks_count":null,"docker_downloads_count":0.5078802124173389,"average":0.5155551013301839},"purl":"pkg:pypi/pytest-github-actions-annotate-failures","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/pytest-github-actions-annotate-failures","docker_dependents_count":144,"docker_downloads_count":23580604,"usage_url":"https://repos.ecosyste.ms/usage/pypi/pytest-github-actions-annotate-failures","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/pytest-github-actions-annotate-failures/dependencies","status":null,"funding_links":[],"critical":null,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-github-actions-annotate-failures/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-github-actions-annotate-failures/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-github-actions-annotate-failures/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/pytest-github-actions-annotate-failures/related_packages","maintainers":[{"uuid":"utgwkk","login":"utgwkk","name":null,"email":null,"url":null,"packages_count":3,"html_url":"https://pypi.org/user/utgwkk/","role":null,"created_at":"2023-02-25T05:56:34.079Z","updated_at":"2023-02-25T05:56:34.079Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/utgwkk/packages"}],"registry":{"name":"pypi.org","url":"https://pypi.org","ecosystem":"pypi","default":true,"packages_count":690499,"maintainers_count":292846,"namespaces_count":0,"keywords_count":228675,"github":"pypi","metadata":{"funded_packages_count":48967},"icon_url":"https://github.com/pypi.png","created_at":"2022-04-04T15:19:23.364Z","updated_at":"2025-06-07T05:28:50.775Z","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":20,"unique_repositories_count_past_30_days":2,"recent_issues":[{"uuid":"4367420846","node_id":"PR_kwDOSBU7U87XkcQO","number":8,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-02T01:20:24.000Z","updated_at":"2026-05-02T01:20:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":10,"packages":[{"name":"pre-commit","old_version":"4.5.1","new_version":"4.6.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.5","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"deepdiff","old_version":"8.6.1","new_version":"9.0.0","repository_url":"https://github.com/qlustered/deepdiff"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-randomly","old_version":"4.0.1","new_version":"4.1.0","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.2","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.4.20260107","new_version":"2.33.0.20260408","repository_url":"https://github.com/python/typeshed"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.5.1` | `4.6.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.5` |\n| [deepdiff](https://github.com/qlustered/deepdiff) | `8.6.1` | `9.0.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `9.0.2` | `9.0.3` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `7.0.0` | `7.1.0` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `4.0.1` | `4.1.0` |\n| [mypy](https://github.com/python/mypy) | `1.19.1` | `1.20.2` |\n| [types-requests](https://github.com/python/typeshed) | `2.32.4.20260107` | `2.33.0.20260408` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.4.0` |\n\n\nUpdates `pre-commit` from 4.5.1 to 4.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.6.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: allow \u003ccode\u003e--hook-dir\u003c/code\u003e to be missing to enable easier usage with \u003ccode\u003egit\u003c/code\u003e 2.54+ git hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: \u003ccode\u003e--hook-type\u003c/code\u003e is required.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.6.0 - 2026-04-21\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: allow \u003ccode\u003e--hook-dir\u003c/code\u003e to be missing to enable easier\nusage with \u003ccode\u003egit\u003c/code\u003e 2.54+ git hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: \u003ccode\u003e--hook-type\u003c/code\u003e is required.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/f35134b05028ec938ac605ae500fdf95462655d3\"\u003e\u003ccode\u003ef35134b\u003c/code\u003e\u003c/a\u003e v4.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a51ffcb81f6c8ed2e6467913c3343a8800f3ab9\"\u003e\u003ccode\u003e2a51ffc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e from pre-commit/hook-impl-optional-hook-dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/d7dee322abfc765b042f2e3b872aab3c3a867610\"\u003e\u003ccode\u003ed7dee32\u003c/code\u003e\u003c/a\u003e make --hook-dir optional for hook-impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/965aeb1c680e8b526342153547f0ec014484c63d\"\u003e\u003ccode\u003e965aeb1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e from pre-commit/hook-impl-required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2eacc064aa9b5bb33d3a0d84a234b475e34f3096\"\u003e\u003ccode\u003e2eacc06\u003c/code\u003e\u003c/a\u003e --hook-type is required for hook-impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f5678bf4ac35cffc0ff7174ad85f7fdc2a5c977e\"\u003e\u003ccode\u003ef5678bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3657\"\u003e#3657\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/054cc5bd6bb1b20faa1eefe09f0de3b68fceee94\"\u003e\u003ccode\u003e054cc5b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/5c0f3024d2524f6e029a4c333392fd9be9fb27f6\"\u003e\u003ccode\u003e5c0f302\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3652\"\u003e#3652\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5d91142676630f8130020b35e166e0c0e92b8f4\"\u003e\u003ccode\u003ea5d9114\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/129a1f5ca1eaee0c952a5e7a07faae305c5e15bc\"\u003e\u003ccode\u003e129a1f5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3641\"\u003e#3641\u003c/a\u003e from pre-commit/mxr-patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.5.1...v4.6.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.13.1 to 7.13.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.13.5 — 2026-03-17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003eissue 2138\u003c/code\u003e_ describes a memory leak that happened when repeatedly\nusing the Coverage API with in-memory data. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the markdown-formatted coverage report didn't fully escape special\ncharacters in file paths (\u003ccode\u003eissue 2141\u003c/code\u003e\u003cem\u003e). This would be very unlikely to\ncause a problem, but now it's done properly, thanks to \u003ccode\u003eEllie Ayla \u0026lt;pull 2142_\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the C extension wouldn't build on VS2019, but now it does (\u003ccode\u003eissue 2145\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2138: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2138\"\u003ecoveragepy/coveragepy#2138\u003c/a\u003e\n.. _issue 2141: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2141\"\u003ecoveragepy/coveragepy#2141\u003c/a\u003e\n.. _pull 2142: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2142\"\u003ecoveragepy/coveragepy#2142\u003c/a\u003e\n.. _issue 2145: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2145\"\u003ecoveragepy/coveragepy#2145\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.4 — 2026-02-09\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the third-party code fix in 7.13.3 required examining the parent\ndirectories where coverage was run. In the unusual situation that one of the\nparent directories is unreadable, a PermissionError would occur, as\ndescribed in \u003ccode\u003eissue 2129\u003c/code\u003e_. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: in test suites that change sys.path, coverage.py could fail with\n\u0026quot;RuntimeError: Set changed size during iteration\u0026quot; as described and fixed in\n\u003ccode\u003epull 2130\u003c/code\u003e_. Thanks, Noah Fatsi.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eWe now publish ppc64le wheels, thanks to \u003ccode\u003ePankhudi Jain \u0026lt;pull 2121_\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2121: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2121\"\u003ecoveragepy/coveragepy#2121\u003c/a\u003e\n.. _issue 2129: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2129\"\u003ecoveragepy/coveragepy#2129\u003c/a\u003e\n.. _pull 2130: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2130\"\u003ecoveragepy/coveragepy#2130\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.3 — 2026-02-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: in some situations, third-party code was measured when it shouldn't have\nbeen, slowing down test execution. This happened with layered virtual\nenvironments such as uv sometimes makes. The problem is fixed, closing \u003ccode\u003eissue 2082\u003c/code\u003e_. Now any directory on sys.path that is inside a virtualenv is\nconsidered third-party code.\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/coveragepy/coveragepy/commit/c88da144eef8cf78424331e5cbbde3e002eef43f\"\u003e\u003ccode\u003ec88da14\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e2ac3e1ef644370101ff365acad3431d16076512\"\u003e\u003ccode\u003ee2ac3e1\u003c/code\u003e\u003c/a\u003e build: sample HTML shouldn't include the status.json file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/910f8f336541c2dcb4e9ec468144c7eb4a7779ac\"\u003e\u003ccode\u003e910f8f3\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/3a4819c24d3d20cb2670b99141517812ffa3fab0\"\u003e\u003ccode\u003e3a4819c\u003c/code\u003e\u003c/a\u003e style: make workflows more uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2a53705f5fe588158b8a8d37ff3beee86388b9e4\"\u003e\u003ccode\u003e2a53705\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 4 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e7c878d201db819416b978150944d9a842d22b18\"\u003e\u003ccode\u003ee7c878d\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/ab4db406a9c35acf977cf3ddb94a78d696b77bc5\"\u003e\u003ccode\u003eab4db40\u003c/code\u003e\u003c/a\u003e build: use --generate-hashes when pinning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a438753eef870441044cef588e29ce4b9a28adf1\"\u003e\u003ccode\u003ea438753\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/7b33457d2c6367dfd5a563239998b3980444e090\"\u003e\u003ccode\u003e7b33457\u003c/code\u003e\u003c/a\u003e refactor: some leftover pyupgrade 3.10 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2ff968db91a7cdafe6f6569ac7659a3a93a2da07\"\u003e\u003ccode\u003e2ff968d\u003c/code\u003e\u003c/a\u003e refactor: this type wasn't used anywhere\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.13.1...7.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.6.1 to 9.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qlustered/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emigration note:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eto_dict()\u003c/code\u003e and \u003ccode\u003eto_json()\u003c/code\u003e now accept a \u003ccode\u003everbose_level\u003c/code\u003e parameter and always return a usable text-view dict. When the original view is \u003ccode\u003e'tree'\u003c/code\u003e, they default to \u003ccode\u003everbose_level=2\u003c/code\u003e for full detail. The old \u003ccode\u003eview_override\u003c/code\u003e parameter is removed. To get the previous results, you will need to pass the explicit verbose_level to \u003ccode\u003eto_json\u003c/code\u003e and \u003ccode\u003eto_dict\u003c/code\u003e if you are using the tree view.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDropping support for Python 3.9\u003c/li\u003e\n\u003cli\u003eSupport for python 3.14\u003c/li\u003e\n\u003cli\u003eAdded support for callable \u003ccode\u003egroup_by\u003c/code\u003e thanks to \u003ca href=\"https://github.com/echan5\"\u003eechan5\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eFlatDeltaDict\u003c/code\u003e TypedDict for \u003ccode\u003eto_flat_dicts\u003c/code\u003e return type\u003c/li\u003e\n\u003cli\u003eFixed colored view display when all list items are removed thanks to \u003ca href=\"https://github.com/yannrouillard\"\u003eyannrouillard\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ehasattr()\u003c/code\u003e swallowing \u003ccode\u003eAttributeError\u003c/code\u003e in \u003ccode\u003e__slots__\u003c/code\u003e handling for objects with \u003ccode\u003e__getattr__\u003c/code\u003e thanks to \u003ca href=\"https://github.com/tpvasconcelos\"\u003etpvasconcelos\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eignore_order=True\u003c/code\u003e missing int-vs-float type changes\u003c/li\u003e\n\u003cli\u003eAlways use t1 path for reporting thanks to \u003ca href=\"https://github.com/devin13cox\"\u003edevin13cox\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003e_convert_oversized_ints\u003c/code\u003e failing on NamedTuples\u003c/li\u003e\n\u003cli\u003eFixed orjson \u003ccode\u003eTypeError\u003c/code\u003e for integers exceeding 64-bit range\u003c/li\u003e\n\u003cli\u003eFixed parameter bug in \u003ccode\u003eto_flat_dicts\u003c/code\u003e where \u003ccode\u003einclude_action_in_path\u003c/code\u003e and \u003ccode\u003ereport_type_changes\u003c/code\u003e were not being passed through\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eignore_keys\u003c/code\u003e issue in \u003ccode\u003edetailed__dict__\u003c/code\u003e thanks to \u003ca href=\"https://github.com/vitalis89\"\u003evitalis89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed logarithmic similarity type hint thanks to \u003ca href=\"https://github.com/ljames8\"\u003eljames8\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e8.6.2 - Fix (CVE-2025-58367)\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/qlustered/deepdiff/commit/41c726586cfef55de0c8474923d2734f1529d223\"\u003e\u003ccode\u003e41c7265\u003c/code\u003e\u003c/a\u003e fixing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/563c51e245c14f154d517b00c50ee8d056dcf636\"\u003e\u003ccode\u003e563c51e\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:seperman/deepdiff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/172dc5cc218cb1cc970145ad241f7e94c335eb47\"\u003e\u003ccode\u003e172dc5c\u003c/code\u003e\u003c/a\u003e updating docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/81c4c9efe7378f53453b3c9546e552d5dfb57552\"\u003e\u003ccode\u003e81c4c9e\u003c/code\u003e\u003c/a\u003e updating docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/2155042a7a596a8d78f6c5ef9f20d2e7d795ce43\"\u003e\u003ccode\u003e2155042\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/qlustered/deepdiff/issues/579\"\u003e#579\u003c/a\u003e from qlustered/dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/dc70684983806f2d9085051c9285851f54246703\"\u003e\u003ccode\u003edc70684\u003c/code\u003e\u003c/a\u003e 9.0.0 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/8ff51de8189fd374f5316900586fa181fac3a92f\"\u003e\u003ccode\u003e8ff51de\u003c/code\u003e\u003c/a\u003e 9.0.0 version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/123a4af982b7020c9b3c9f1ff2ed97f72db0bd5e\"\u003e\u003ccode\u003e123a4af\u003c/code\u003e\u003c/a\u003e no more auto commit on version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/913841871a97565a1ce9664671cd3af1035bd76f\"\u003e\u003ccode\u003e9138418\u003c/code\u003e\u003c/a\u003e including docs in wheel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/eac936518f2925c62185c0cdb29dd3faf5e9c9b7\"\u003e\u003ccode\u003eeac9365\u003c/code\u003e\u003c/a\u003e updating changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qlustered/deepdiff/compare/8.6.1...9.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\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/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\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/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\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\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\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/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\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/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = 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/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\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/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\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/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 7.0.0 to 7.1.0\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\u003e7.1.0 (2026-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed total coverage computation to always be consistent, regardless of reporting settings.\nPreviously some reports could produce different total counts, and consequently can make --cov-fail-under behave different depending on\nreporting options.\nSee \u003ccode\u003e[#641](https://github.com/pytest-dev/pytest-cov/issues/641) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/641\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove handling of ResourceWarning from sqlite3.\u003c/p\u003e\n\u003cp\u003eThe plugin adds warning filter for sqlite3 \u003ccode\u003eResourceWarning\u003c/code\u003e unclosed database (since 6.2.0).\nIt checks if there is already existing plugin for this message by comparing filter regular expression.\nWhen filter is specified on command line the message is escaped and does not match an expected message.\nA check for an escaped regular expression is added to handle this case.\u003c/p\u003e\n\u003cp\u003eWith this fix one can suppress \u003ccode\u003eResourceWarning\u003c/code\u003e from sqlite3 from command line::\u003c/p\u003e\n\u003cp\u003epytest -W \u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot; ...\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious improvements to documentation.\nContributed by Art Pelling in \u003ccode\u003e[#718](https://github.com/pytest-dev/pytest-cov/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/718\u0026gt;\u003c/code\u003e_ and\n\u0026quot;vivodi\u0026quot; in \u003ccode\u003e[#738](https://github.com/pytest-dev/pytest-cov/issues/738) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/738\u0026gt;\u003c/code\u003e\u003cem\u003e.\nAlso closed \u003ccode\u003e[#736](https://github.com/pytest-dev/pytest-cov/issues/736) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/736\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed some assertions in tests.\nContributed by in Markéta Machová in \u003ccode\u003e[#722](https://github.com/pytest-dev/pytest-cov/issues/722) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/722\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved unnecessary coverage configuration copying (meant as a backup because reporting commands had configuration side-effects before coverage 5.0).\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/66c8a526b1246b5eb8fb1bc218878131bc628622\"\u003e\u003ccode\u003e66c8a52\u003c/code\u003e\u003c/a\u003e Bump version: 7.0.0 → 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f7076624784332594aa4cb3585d4757d295db15e\"\u003e\u003ccode\u003ef707662\u003c/code\u003e\u003c/a\u003e Make the examples use pypy 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6049a7847872e3139e6c82e93787123df5dc8672\"\u003e\u003ccode\u003e6049a78\u003c/code\u003e\u003c/a\u003e Make context test use the old ctracer (seems the new sysmon tracer behaves di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8ebf20bbbc73478b3f8fd36d30237d9ea083f06b\"\u003e\u003ccode\u003e8ebf20b\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/861d30e60d571f97259c6b718b71c819d5dbc3b9\"\u003e\u003ccode\u003e861d30e\u003c/code\u003e\u003c/a\u003e Remove the backup context manager  - shouldn't be needed since coverage 5.0, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/fd4c956014035527f0c3c8d7faef3f8cfdadac7f\"\u003e\u003ccode\u003efd4c956\u003c/code\u003e\u003c/a\u003e Pass the precision on the nulled total (seems that there's some caching goion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/78c9c4ecb005faf4962fd86ff7bf9c9cce9554d6\"\u003e\u003ccode\u003e78c9c4e\u003c/code\u003e\u003c/a\u003e Only run the 3.9 on older deps.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4849a922e8be725c662a3d9175da571ace6545dc\"\u003e\u003ccode\u003e4849a92\u003c/code\u003e\u003c/a\u003e Punctuation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/197c35e2f37031fd1927715307ab6eed7cb3d2b7\"\u003e\u003ccode\u003e197c35e\u003c/code\u003e\u003c/a\u003e Update changelog and hopefully I don't forget to publish release again :))\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/14dc1c92d44108384e39803888635fdbfc578b7f\"\u003e\u003ccode\u003e14dc1c9\u003c/code\u003e\u003c/a\u003e Update examples to use 3.11 and make the adhoc layout example look a bit more...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v7.0.0...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-randomly` from 4.0.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/blob/main/CHANGELOG.rst\"\u003epytest-randomly's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.1.0 (2026-04-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix a crash with Faker installed when explicitly enabling and disabling the plugin (via \u003ccode\u003e-p randomly -p no:randomly\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThanks to mojosan77 for the report in \u003ccode\u003eIssue [#718](https://github.com/pytest-dev/pytest-randomly/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/718\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop Python 3.9 support.\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-randomly/commit/c412c8d6d328224a6a0cb9e4324438c62b46f4f5\"\u003e\u003ccode\u003ec412c8d\u003c/code\u003e\u003c/a\u003e Version 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/657d9c356d1970bbe664b36446d4f8a9461e4988\"\u003e\u003ccode\u003e657d9c3\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/722\"\u003e#722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/49c8c1bb487d03ca1bda2ac7567e4205bf82aae6\"\u003e\u003ccode\u003e49c8c1b\u003c/code\u003e\u003c/a\u003e Fix a crash with Faker installed and plugin disabled (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/c9181c28607e990123ee480200ae2e684f58e7b6\"\u003e\u003ccode\u003ec9181c2\u003c/code\u003e\u003c/a\u003e Bump django from 5.2.12 to 5.2.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/717\"\u003e#717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/1292cc060c8892d3cccc2bd67c44b3405a6693d4\"\u003e\u003ccode\u003e1292cc0\u003c/code\u003e\u003c/a\u003e Upgrade pre-commit to Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/56d13889650fa7f71df504c8ab810967fd3fb44e\"\u003e\u003ccode\u003e56d1388\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/43702c107ada21dca7e59836a8547ed1e62e77aa\"\u003e\u003ccode\u003e43702c1\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/c3dc97c20e2931b7557ab529703a6bf754df9110\"\u003e\u003ccode\u003ec3dc97c\u003c/code\u003e\u003c/a\u003e Bump pygments from 2.19.2 to 2.20.0 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/a2dee8a6b620f0ceaf385acfb1d0b778b0fd2892\"\u003e\u003ccode\u003ea2dee8a\u003c/code\u003e\u003c/a\u003e Improve Coverage.py configuration (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/712\"\u003e#712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/fed476639744207a10bc1742d7420fc413b555bf\"\u003e\u003ccode\u003efed4766\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/compare/4.0.1...4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.20.2\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse WAL with SQLite cache and fix close (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21154\"\u003e21154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust SQLite journal mode (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21217\"\u003e21217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCorrectly aggregate narrowing information on parent expressions (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21206\"\u003e21206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression related to generic callables (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21208\"\u003e21208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression by avoiding widening types in some contexts (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21242\"\u003e21242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix slicing in non-strict optional mode (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21282\"\u003e21282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emypyc: Fix match statement semantics for \u0026quot;or\u0026quot; pattern (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21156\"\u003e21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emypyc: Fix issue with module dunder attributes (Piotr Sawicki, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21275\"\u003e21275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial support for Python 3.15.0a8 (Marc Mueller, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21255\"\u003e21255\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eA5rocks\u003c/li\u003e\n\u003cli\u003eAaron Wieczorek\u003c/li\u003e\n\u003cli\u003eAdam Turner\u003c/li\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003easce\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrent Westbrook\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChris Burroughs\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eColin Watson\u003c/li\u003e\n\u003cli\u003eDonghoon Nam\u003c/li\u003e\n\u003cli\u003eE. M. Bray\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eGeorge Ogden\u003c/li\u003e\n\u003cli\u003egetzze\u003c/li\u003e\n\u003cli\u003egrayjk\u003c/li\u003e\n\u003cli\u003eGregor Riepl\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilliard\u003c/li\u003e\n\u003cli\u003eJames Le Cuirot\u003c/li\u003e\n\u003cli\u003eJeremy Nimmer\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKai (Kazuya Ito)\u003c/li\u003e\n\u003cli\u003ekaushal trivedi\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eLukas Geiger\u003c/li\u003e\n\u003cli\u003eŁukasz Langa\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael R. Crusoe\u003c/li\u003e\n\u003cli\u003emichaelm-openai\u003c/li\u003e\n\u003cli\u003eNeil Schemenauer\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\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/python/mypy/commit/145a062651b5f9996b75ef32b7040bd2e885ed82\"\u003e\u003ccode\u003e145a062\u003c/code\u003e\u003c/a\u003e Bump version to 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/81cd49215c288eacb987de066f02daff2553b7c7\"\u003e\u003ccode\u003e81cd492\u003c/code\u003e\u003c/a\u003e Fix slicing with nonstrict optional (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21282\"\u003e#21282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/908d3441eecbaa2a6193165317177db834d7ca1a\"\u003e\u003ccode\u003e908d344\u003c/code\u003e\u003c/a\u003e [mypyc] Set dunder attrs when adding module to sys.modules (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21275\"\u003e#21275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ba28610fac9d2b33be210ca8dcfe4bc47b7af424\"\u003e\u003ccode\u003eba28610\u003c/code\u003e\u003c/a\u003e Initial support for Python 3.15.0a8 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21255\"\u003e#21255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7b0e09f48dbd3717ed008a273cd17e8e960c2037\"\u003e\u003ccode\u003e7b0e09f\u003c/code\u003e\u003c/a\u003e Fix match statement semantics for \u0026quot;or\u0026quot; pattern (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21156\"\u003e#21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/92b74f226de62f7505f5ef5cb158e8ec9c58b8b7\"\u003e\u003ccode\u003e92b74f2\u003c/code\u003e\u003c/a\u003e Avoid widening types in conditional_types (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21242\"\u003e#21242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0dcbfaa40b0e360a16baea9cf851955375d91b54\"\u003e\u003ccode\u003e0dcbfaa\u003c/code\u003e\u003c/a\u003e Fix is_overlapping_types for generic callables (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21208\"\u003e#21208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/210f518dede35292033ef0d387847406a0ccef8f\"\u003e\u003ccode\u003e210f518\u003c/code\u003e\u003c/a\u003e Correctly aggregate narrowing information on parent expressions (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21206\"\u003e#21206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c34530e53a10e385d8b0f1af4baa88a596b5ceaa\"\u003e\u003ccode\u003ec34530e\u003c/code\u003e\u003c/a\u003e Only set journal mode in coordinator (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21217\"\u003e#21217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/79a3ec6d01b56a27c00e9b3320c2b1d4d73a77f9\"\u003e\u003ccode\u003e79a3ec6\u003c/code\u003e\u003c/a\u003e Use WAL with SQLite cache, fix close (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21154\"\u003e#21154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.4.20260107 to 2.33.0.20260408\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\u003c/a\u003e\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/pytest-dev/pytest-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.4.0\"\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 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/dsp-testing/poetry-v2-repo/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsp-testing%2Fpoetry-v2-repo/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"},{"uuid":"4229606033","node_id":"PR_kwDORTkgrc7RBOuc","number":10,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-09T05:16:20.000Z","updated_at":"2026-05-14T07:01:38.440Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":4,"packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.0","repository_url":"https://github.com/python/mypy"},{"name":"ty","old_version":"0.0.17","new_version":"0.0.27","repository_url":"https://github.com/astral-sh/ty"},{"name":"types-requests","old_version":"2.32.4.20260107","new_version":"2.33.0.20260402","repository_url":"https://github.com/python/typeshed"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 4 updates in the / directory: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures), [mypy](https://github.com/python/mypy), [ty](https://github.com/astral-sh/ty) and [types-requests](https://github.com/python/typeshed).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMypy Release Notes\u003c/h1\u003e\n\u003ch2\u003eNext Release\u003c/h2\u003e\n\u003ch2\u003eMypy 1.20\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.20.0 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features, performance\nimprovements and bug fixes. You can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003ePlanned Changes to Defaults and Flags in Mypy 2.0\u003c/h3\u003e\n\u003cp\u003eAs a reminder, we are planning to enable \u003ccode\u003e--local-partial-types\u003c/code\u003e by default in mypy 2.0, which\nwill likely be the next feature release. This will often require at least minor code changes. This\noption is implicitly enabled by mypy daemon, so this makes the behavior of daemon and non-daemon\nmodes consistent.\u003c/p\u003e\n\u003cp\u003eNote that this release improves the compatibility of \u003ccode\u003e--local-partial-types\u003c/code\u003e significantly to\nmake the switch easier (see below for more).\u003c/p\u003e\n\u003cp\u003eThis can also be configured in a mypy configuration file (use \u003ccode\u003eFalse\u003c/code\u003e to disable):\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003elocal_partial_types = True\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-local-partial-types\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe will also enable \u003ccode\u003e--strict-bytes\u003c/code\u003e by default in mypy 2.0. This usually requires at most\nminor code changes to adopt. For more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict-bytes\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eFinally, \u003ccode\u003e--allow-redefinition-new\u003c/code\u003e will be renamed to \u003ccode\u003e--allow-redefinition\u003c/code\u003e. If you want\nto continue using the older \u003ccode\u003e--allow-redefinition\u003c/code\u003e semantics which are less flexible (e.g.\nlimited support for conditional redefinitions), you can switch to \u003ccode\u003e--allow-redefinition-old\u003c/code\u003e,\nwhich is currently supported as an alias to the legacy \u003ccode\u003e--allow-redefinition\u003c/code\u003e behavior.\nTo use \u003ccode\u003e--allow-redefinition\u003c/code\u003e in the upcoming mypy 2.0, you can't use \u003ccode\u003e--no-local-partial-types\u003c/code\u003e.\nFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-allow-redefinition-new\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eBetter Type Narrowing\u003c/h3\u003e\n\u003cp\u003eMypy's implementation of narrowing has been substantially reworked. Mypy will now narrow more\naggressively, more consistently, and more correctly. In particular, you are likely to notice new\nnarrowing behavior in equality expressions (\u003ccode\u003e==\u003c/code\u003e), containment expressions (\u003ccode\u003ein\u003c/code\u003e),\u003c/p\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/python/mypy/commit/770d3ca4997032dc3a1c4f0b468e9f58e8f38505\"\u003e\u003ccode\u003e770d3ca\u003c/code\u003e\u003c/a\u003e Remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/4738ffafc56a0d175cba06e893ffa62e756fc7e0\"\u003e\u003ccode\u003e4738ffa\u003c/code\u003e\u003c/a\u003e Changelog updates for 1.20 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21109\"\u003e#21109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b4f07a717c3a239a9c77808c5550fff5f2638c96\"\u003e\u003ccode\u003eb4f07a7\u003c/code\u003e\u003c/a\u003e Use 'native-parser' instead of 'native-parse' for optional dependency (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21115\"\u003e#21115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7bec7b7f791790b1c925cdcc573ced564fbbf065\"\u003e\u003ccode\u003e7bec7b7\u003c/code\u003e\u003c/a\u003e [mypyc] Document librt and librt.base64 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21114\"\u003e#21114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c4825969450385cf3eb91a4fc02f273b369bc301\"\u003e\u003ccode\u003ec482596\u003c/code\u003e\u003c/a\u003e --allow-redefinition-new is no longer experimental (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c916ca3fa79d9324dcbe130b18e24e2b5e2d1eb5\"\u003e\u003ccode\u003ec916ca3\u003c/code\u003e\u003c/a\u003e sdist: include \u003ccode\u003emisc/{diff-cache,apply-cache-diff}.py\u003c/code\u003e for `mypy/test/test_di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b137e4ed41d6178f6dbd0e609db56b8c1ad5384a\"\u003e\u003ccode\u003eb137e4e\u003c/code\u003e\u003c/a\u003e [mypyc] Speed up native-to-native imports within the same group (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21101\"\u003e#21101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/978b711c21adadf5dae4db80127ddf270d79af5f\"\u003e\u003ccode\u003e978b711\u003c/code\u003e\u003c/a\u003e [mypyc] Fix range loop variable off-by-one after loop exit (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21098\"\u003e#21098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/67ada30918d1a32e1935e9ac468113e0aa002b79\"\u003e\u003ccode\u003e67ada30\u003c/code\u003e\u003c/a\u003e [stubtest] Check runtime availability of private types not marked `@type_chec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/bdef6ef8734af07cab1bf0acadc1d8ab9add93c3\"\u003e\u003ccode\u003ebdef6ef\u003c/code\u003e\u003c/a\u003e librt cache tests: build respecting MYPY_TEST_PREFIX (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21097\"\u003e#21097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ty` from 0.0.17 to 0.0.27\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ty/releases\"\u003ety's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.27\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-31.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix panic on debug builds when attempting to provide autocomplete suggestions for \u003ccode\u003elist[int]\u0026lt;CURSOR\u0026gt;()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix instance-attribute lookup in methods of protocol classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24213\"\u003e#24213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nested global and nonlocal lookups through forwarding scopes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24279\"\u003e#24279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic on \u003ccode\u003elist[Annotated[()]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24303\"\u003e#24303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stack overflow on \u003ccode\u003etype A = TypeIs[Callable[[], A]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24245\"\u003e#24245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003e_cls\u003c/code\u003e as the name of the first argument for synthesized \u003ccode\u003ecollections.namedtuple\u003c/code\u003e constructor methods (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24333\"\u003e#24333\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLSP server\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix semantic token classification for properties accessed on instances (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24065\"\u003e#24065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGrey out unused bindings in the editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23305\"\u003e#23305\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore type checking\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003eget()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24231\"\u003e#24231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003epop()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24229\"\u003e#24229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for functional TypedDict (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24174\"\u003e#24174\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24331\"\u003e#24331\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24295\"\u003e#24295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBan type qualifiers in PEP-695 type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24242\"\u003e#24242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnforce \u003ccode\u003eFinal\u003c/code\u003e attribute assignment rules for annotated and augmented writes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23880\"\u003e#23880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove support for \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23888\"\u003e#23888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInfer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't incorrectly infer the type of a method as being a singleton type when it's accessed off an instance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24039\"\u003e#24039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate type context through \u003ccode\u003eawait\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24256\"\u003e#24256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve union-likes in emitting union attribute errors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24263\"\u003e#24263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eShow the user where the variable was declared as \u003ccode\u003eFinal\u003c/code\u003e when emitting a diagnostic about a \u003ccode\u003eFinal\u003c/code\u003e variable being reassigned (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/denyszhak\"\u003e\u003ccode\u003e@​denyszhak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ty 0.0.27\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/astral-sh/ty/blob/main/CHANGELOG.md\"\u003ety's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.27\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-31.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix panic on debug builds when attempting to provide autocomplete suggestions for \u003ccode\u003elist[int]\u0026lt;CURSOR\u0026gt;()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix instance-attribute lookup in methods of protocol classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24213\"\u003e#24213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nested global and nonlocal lookups through forwarding scopes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24279\"\u003e#24279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic on \u003ccode\u003elist[Annotated[()]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24303\"\u003e#24303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stack overflow on \u003ccode\u003etype A = TypeIs[Callable[[], A]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24245\"\u003e#24245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003e_cls\u003c/code\u003e as the name of the first argument for synthesized \u003ccode\u003ecollections.namedtuple\u003c/code\u003e constructor methods (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24333\"\u003e#24333\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLSP server\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix semantic token classification for properties accessed on instances (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24065\"\u003e#24065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGrey out unused bindings in the editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23305\"\u003e#23305\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore type checking\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003eget()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24231\"\u003e#24231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003epop()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24229\"\u003e#24229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for functional TypedDict (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24174\"\u003e#24174\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24331\"\u003e#24331\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24295\"\u003e#24295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBan type qualifiers in PEP-695 type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24242\"\u003e#24242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnforce \u003ccode\u003eFinal\u003c/code\u003e attribute assignment rules for annotated and augmented writes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23880\"\u003e#23880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove support for \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23888\"\u003e#23888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInfer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't incorrectly infer the type of a method as being a singleton type when it's accessed off an instance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24039\"\u003e#24039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate type context through \u003ccode\u003eawait\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24256\"\u003e#24256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve union-likes in emitting union attribute errors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24263\"\u003e#24263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eShow the user where the variable was declared as \u003ccode\u003eFinal\u003c/code\u003e when emitting a diagnostic about a \u003ccode\u003eFinal\u003c/code\u003e variable being reassigned (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/denyszhak\"\u003e\u003ccode\u003e@​denyszhak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.0.26\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\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/astral-sh/ty/commit/5c9e342c2ea67a0ac8749d32296dd3071974927a\"\u003e\u003ccode\u003e5c9e342\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.27 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3185\"\u003e#3185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/e6a57315251f37ab3516cb614f891ece91595393\"\u003e\u003ccode\u003ee6a5731\u003c/code\u003e\u003c/a\u003e Update actions/cache action to v5.0.4 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3172\"\u003e#3172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/c47b982b86bb599d016af1d235174391f618ff16\"\u003e\u003ccode\u003ec47b982\u003c/code\u003e\u003c/a\u003e Update prek dependencies (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3173\"\u003e#3173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/657abcfc82221440481f9c9b76c6b6a3b89d5d00\"\u003e\u003ccode\u003e657abcf\u003c/code\u003e\u003c/a\u003e Update astral-sh/setup-uv action to v8 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/9e582cb48e9c2306073091d554c04853091d612b\"\u003e\u003ccode\u003e9e582cb\u003c/code\u003e\u003c/a\u003e Fetch the cargo-dist binary directly instead of using the installer (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3160\"\u003e#3160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/d5c51ea65be68cffcfa1afe204e5f6003fc06b02\"\u003e\u003ccode\u003ed5c51ea\u003c/code\u003e\u003c/a\u003e docs: use content tabs (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3146\"\u003e#3146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/9893776cbd744bec84a43463728ab3813b00968f\"\u003e\u003ccode\u003e9893776\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3147\"\u003e#3147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/94030512727f4320e8184f120c4330ed8f42ec6f\"\u003e\u003ccode\u003e9403051\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.26 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/d60899a14f6fe368e477c17f4205483aebdf84a8\"\u003e\u003ccode\u003ed60899a\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.25 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3125\"\u003e#3125\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/db65b3e118a705be2694032fd2df613ea11565f1\"\u003e\u003ccode\u003edb65b3e\u003c/code\u003e\u003c/a\u003e Update documentation to reflect \u003ccode\u003etype:ignore\u003c/code\u003e changes (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3121\"\u003e#3121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ty/compare/0.0.17...0.0.27\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.4.20260107 to 2.33.0.20260402\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\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 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/ReubenFrankel/target-jsonl/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReubenFrankel%2Ftarget-jsonl/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4079192732","node_id":"PR_kwDOMt9I9c7Kwju4","number":118,"state":"closed","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-03-22T21:04:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-15T21:04:52.000Z","updated_at":"2026-03-22T21:04:20.000Z","time_to_close":604765,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":7,"packages":[{"name":"charset-normalizer","old_version":"3.4.4","new_version":"3.4.6","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"filelock","old_version":"3.25.0","new_version":"3.25.2","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"identify","old_version":"2.6.17","new_version":"2.6.18","repository_url":"https://github.com/pre-commit/identify"},{"name":"platformdirs","old_version":"4.9.2","new_version":"4.9.4","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"ruff","old_version":"0.15.4","new_version":"0.15.6","repository_url":"https://github.com/astral-sh/ruff"},{"name":"virtualenv","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 7 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.4` | `3.4.6` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.25.0` | `3.25.2` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.17` | `2.6.18` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.9.2` | `4.9.4` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.3.0` | `0.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.4` | `0.15.6` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `21.1.0` | `21.2.0` |\n\n\nUpdates `charset-normalizer` from 3.4.4 to 3.4.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.4...3.4.5\"\u003e3.4.5\u003c/a\u003e (2026-03-06)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=82\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.19.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit link to lib math in our optimized build. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/692\"\u003e#692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLogger level not restored correctly for empty byte sequences. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/701\"\u003e#701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTypeError when passing bytearray to from_bytes. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/703\"\u003e#703\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eApplied safe micro-optimizations in both our noise detector and language detector.\u003c/li\u003e\n\u003cli\u003eRewrote the \u003ccode\u003equery_yes_no\u003c/code\u003e function (inside CLI) to avoid using ambiguous licensed code.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ecd.py\u003c/code\u003e submodule into mypyc optional compilation to reduce further the performance impact.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003cbr /\u003e\nmypyc changed the usual binary output for the optimized wheel. Beware, especially if using PyInstaller or alike. See \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/714\"\u003ejawah/charset_normalizer#714\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.4...3.4.5\"\u003e3.4.5\u003c/a\u003e (2026-03-06)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=82\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.19.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit link to lib math in our optimized build. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/692\"\u003e#692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLogger level not restored correctly for empty byte sequences. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/701\"\u003e#701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTypeError when passing bytearray to from_bytes. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/703\"\u003e#703\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eApplied safe micro-optimizations in both our noise detector and language detector.\u003c/li\u003e\n\u003cli\u003eRewrote the \u003ccode\u003equery_yes_no\u003c/code\u003e function (inside CLI) to avoid using ambiguous licensed code.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ecd.py\u003c/code\u003e submodule into mypyc optional compilation to reduce further the performance impact.\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/jawah/charset_normalizer/commit/5478b84058a2a04e2d67a5dabbe0a273706707aa\"\u003e\u003ccode\u003e5478b84\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/715\"\u003e#715\u003c/a\u003e from jawah/release-3.4.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/5c0a09e2caf1b3977df691916e949e1de4b8a738\"\u003e\u003ccode\u003e5c0a09e\u003c/code\u003e\u003c/a\u003e :heavy_check_mark: add confidence for threading usage, mostly due to lru_cach...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef826b28d9f21e0059c93acc69a8bf364126c179\"\u003e\u003ccode\u003eef826b2\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/5564f1aebe56584150a988f565ff69ee316dcefe\"\u003e\u003ccode\u003e5564f1a\u003c/code\u003e\u003c/a\u003e :pencil: update docs accordingly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0f2cf7d86e7c3ef4b77790a754b048bfada4fd09\"\u003e\u003ccode\u003e0f2cf7d\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/54a189446becf4f2b42772f0dce89a5ef79fe8cc\"\u003e\u003ccode\u003e54a1894\u003c/code\u003e\u003c/a\u003e :bug: fix --normalize writing to wrong path with multiple files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2177e28828bb7fcc2f1bed2a2d4463161a180812\"\u003e\u003ccode\u003e2177e28\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b2497a54ba545dae84be01649d66fd52a7fcfc2d\"\u003e\u003ccode\u003eb2497a5\u003c/code\u003e\u003c/a\u003e :bug: edge case where noise difference between two candidates can be almost i...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/13a5d0b471cfb9b60b8cda84c78b7874c0267123\"\u003e\u003ccode\u003e13a5d0b\u003c/code\u003e\u003c/a\u003e :wrench: upgrade ci requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b9ffbd4e8314b0f733ddb34eef32d80490eb947c\"\u003e\u003ccode\u003eb9ffbd4\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14t nox mypyc session\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.4...3.4.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.25.0 to 3.25.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.25.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): suppress EIO on close in Docker bind mounts by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/513\"\u003etox-dev/filelock#513\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.25.1...3.25.2\"\u003ehttps://github.com/tox-dev/filelock/compare/3.25.1...3.25.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.25.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs(logo): add branded project logo by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/507\"\u003etox-dev/filelock#507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(win): restore best-effort lock file cleanup on release by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/511\"\u003etox-dev/filelock#511\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.25.0...3.25.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.25.0...3.25.1\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/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.2 (2026-03-11)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): suppress EIO on close in Docker bind mounts :pr:\u003ccode\u003e513\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.1 (2026-03-09)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e510\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(win): restore best-effort lock file cleanup on release :pr:\u003ccode\u003e511\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e508\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(logo): add branded project logo :pr:\u003ccode\u003e507\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.0 (2026-03-01)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e✨ feat(async): add AsyncReadWriteLock :pr:\u003ccode\u003e506\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 :pr:\u003ccode\u003e503\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/upload-artifact from 6 to 7 :pr:\u003ccode\u003e502\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdd security policy\u003c/li\u003e\n\u003cli\u003eAdd permissions to check workflow :pr:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e499\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.3 (2026-02-19)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): handle ENOENT race on FUSE/NFS during acquire :pr:\u003ccode\u003e495\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(ci): add trailing blank line after changelog entries :pr:\u003ccode\u003e492\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.2 (2026-02-16)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(rw): close sqlite3 cursors and skip SoftFileLock Windows race :pr:\u003ccode\u003e491\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(test): resolve flaky write non-starvation test :pr:\u003ccode\u003e490\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: restructure using Diataxis framework :pr:\u003ccode\u003e489\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.1 (2026-02-15)\u003c/p\u003e\n\u003chr /\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/tox-dev/filelock/commit/5b9872c523b20db569d8832da4fb640e9c175ce6\"\u003e\u003ccode\u003e5b9872c\u003c/code\u003e\u003c/a\u003e Release 3.25.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/42b740aa076e81332402a16244c7cea60ac78851\"\u003e\u003ccode\u003e42b740a\u003c/code\u003e\u003c/a\u003e 🐛 fix(unix): suppress EIO on close in Docker bind mounts (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/513\"\u003e#513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/d8b04b5018932f53b3d2743fadac507dd616af5c\"\u003e\u003ccode\u003ed8b04b5\u003c/code\u003e\u003c/a\u003e Release 3.25.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0633386072b71dfd27c6799323aecca45fb6a094\"\u003e\u003ccode\u003e0633386\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/510\"\u003e#510\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/7f2247d81bc8eab802821cd40437a61c40368d17\"\u003e\u003ccode\u003e7f2247d\u003c/code\u003e\u003c/a\u003e 🐛 fix(win): restore best-effort lock file cleanup on release (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5ae1c4e36548fc0ff6e24a26cb4187b65f2cdccb\"\u003e\u003ccode\u003e5ae1c4e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/508\"\u003e#508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bcffcfea7a8f616968e7cc45c047cc0d4142a064\"\u003e\u003ccode\u003ebcffcfe\u003c/code\u003e\u003c/a\u003e 📝 docs(logo): add branded project logo (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/507\"\u003e#507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.25.0...3.25.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.17 to 2.6.18\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/07a801758ea68c17523122c1bcb0635b9d71cba1\"\u003e\u003ccode\u003e07a8017\u003c/code\u003e\u003c/a\u003e v2.6.18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/2609c0ad2a9d3360d8815e63e0a4a9e1c78688a2\"\u003e\u003ccode\u003e2609c0a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/581\"\u003e#581\u003c/a\u003e from pre-commit/mxr-patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/74d7931da89ccc892dfb9dccf9b04eb389216903\"\u003e\u003ccode\u003e74d7931\u003c/code\u003e\u003c/a\u003e Configure pyproject.toml to have custom 'pyproject' file type\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.17...v2.6.18\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `platformdirs` from 4.9.2 to 4.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/platformdirs/releases\"\u003eplatformdirs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.9.4\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd permissions to workflows by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/455\"\u003etox-dev/platformdirs#455\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/456\"\u003etox-dev/platformdirs#456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/458\"\u003etox-dev/platformdirs#458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: add project logo to documentation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/459\"\u003etox-dev/platformdirs#459\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.3...4.9.4\"\u003ehttps://github.com/tox-dev/platformdirs/compare/4.9.3...4.9.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.9.3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix test failures on BSD for runtime directory defaults by \u003ca href=\"https://github.com/Fridayai700\"\u003e\u003ccode\u003e@​Fridayai700\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/451\"\u003etox-dev/platformdirs#451\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect XDG_CONFIG_HOME in _get_user_dirs_folder by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/453\"\u003etox-dev/platformdirs#453\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd missing _optionally_create_directory in Android user_log_dir and user_runtime_dir by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/452\"\u003etox-dev/platformdirs#452\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/Fridayai700\"\u003e\u003ccode\u003e@​Fridayai700\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/451\"\u003etox-dev/platformdirs#451\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/453\"\u003etox-dev/platformdirs#453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.3\"\u003ehttps://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.3\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/tox-dev/platformdirs/blob/main/docs/changelog.rst\"\u003eplatformdirs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.4 (2026-03-05)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e461\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eUpdate README.md\u003c/li\u003e\n\u003cli\u003e📝 docs: add project logo to documentation :pr:\u003ccode\u003e459\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump the all group with 2 updates :pr:\u003ccode\u003e457\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdd permissions to workflows :pr:\u003ccode\u003e455\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd security policy\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e454\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.2 (2026-02-16)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs: restructure following Diataxis framework :pr:\u003ccode\u003e448\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(platforms): fix RST formatting and TOC hierarchy :pr:\u003ccode\u003e447\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.1 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs: enhance README, fix issues, and reorganize platforms.rst :pr:\u003ccode\u003e445\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.0 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📚 docs: split usage guide into tutorial, how-to, and reference :pr:\u003ccode\u003e441\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add site_bin_dir property :pr:\u003ccode\u003e443\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add site_applications_dir property :pr:\u003ccode\u003e442\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(unix): use correct runtime dir path for OpenBSD :pr:\u003ccode\u003e440\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(usage): document use_site_for_root parameter :pr:\u003ccode\u003e439\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.8.0 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs(usage): note that home dir is in stdlib :pr:\u003ccode\u003e431\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add user_applications_dir property :pr:\u003ccode\u003e432\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add user_bin_dir property :pr:\u003ccode\u003e430\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(macos): yield individual site dirs in iter_*_dirs :pr:\u003ccode\u003e429\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(windows): add WIN_PD_OVERRIDE_* env var overrides :pr:\u003ccode\u003e428\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/3fdb23e77c02dc11d0ddc82c3086c3240b236157\"\u003e\u003ccode\u003e3fdb23e\u003c/code\u003e\u003c/a\u003e Release 4.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/96e0ed0f26ed62790ca586bb0d6fe89b9306ed44\"\u003e\u003ccode\u003e96e0ed0\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/461\"\u003e#461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/455f98ec6e82730f2f288f7ae35995b0f51d58df\"\u003e\u003ccode\u003e455f98e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/423bc18c91162b894d4cc777b04bb409d910e80a\"\u003e\u003ccode\u003e423bc18\u003c/code\u003e\u003c/a\u003e 📝 docs: add project logo to documentation (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/459\"\u003e#459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/b10b8c549c152dffc20660371a9079821007317a\"\u003e\u003ccode\u003eb10b8c5\u003c/code\u003e\u003c/a\u003e Standardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/27582dfe04b6320a201399c25df0a2f1f7f89b89\"\u003e\u003ccode\u003e27582df\u003c/code\u003e\u003c/a\u003e build(deps): bump the all group with 2 updates (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/457\"\u003e#457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/da59cc6a5725e9b63bba38c70e9119b73a0cd300\"\u003e\u003ccode\u003eda59cc6\u003c/code\u003e\u003c/a\u003e Move SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/5ef8a10eec033f631a47f45fcd1d853c7b9063f7\"\u003e\u003ccode\u003e5ef8a10\u003c/code\u003e\u003c/a\u003e Add permissions to workflows (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/455\"\u003e#455\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/2f0cd48571f53b7acb4097f20787f416cb056d5d\"\u003e\u003ccode\u003e2f0cd48\u003c/code\u003e\u003c/a\u003e Add security policy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/aeb0da1b16c6e1b80c0e00766ec958588e151aa9\"\u003e\u003ccode\u003eaeb0da1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/454\"\u003e#454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.4 to 0.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.6\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-12.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003elazy\u003c/code\u003e import parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23755\"\u003e#23755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for star-unpacking of comprehensions (PEP 798) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23788\"\u003e#23788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject semantic syntax errors for lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23757\"\u003e#23757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop a few rules from the preview default set (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23879\"\u003e#23879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag \u003ccode\u003eVariable.get()\u003c/code\u003e calls outside of task execution context (\u003ccode\u003eAIR003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23584\"\u003e#23584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag runtime-varying values in DAG/task constructor arguments (\u003ccode\u003eAIR304\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23631\"\u003e#23631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003edelattr-with-constant\u003c/code\u003e (\u003ccode\u003eB043\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23737\"\u003e#23737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Add \u003ccode\u003eTID254\u003c/code\u003e to enforce lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23777\"\u003e#23777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Allow users to ban lazy imports with \u003ccode\u003eTID254\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23847\"\u003e#23847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Retain \u003ccode\u003elazy\u003c/code\u003e keyword when sorting imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23762\"\u003e#23762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Add \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e automatically (\u003ccode\u003eUP006\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23260\"\u003e#23260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Support \u003ccode\u003enewline\u003c/code\u003e parameter in \u003ccode\u003eFURB101\u003c/code\u003e for Python 3.13+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23754\"\u003e#23754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add \u003ccode\u003eos-path-commonprefix\u003c/code\u003e (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23814\"\u003e#23814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add unsafe fix for os-path-commonprefix (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23852\"\u003e#23852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Limit \u003ccode\u003eRUF036\u003c/code\u003e to typing contexts; make it unsafe for non-typing-only (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23765\"\u003e#23765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Use starred unpacking for \u003ccode\u003eRUF017\u003c/code\u003e in Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23789\"\u003e#23789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e creating unwanted leading whitespace (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23773\"\u003e#23773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e breaking shebangs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23577\"\u003e#23577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve required annotation parentheses in annotated assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23865\"\u003e#23865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve type-expression parentheses in the formatter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23867\"\u003e#23867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Fix stack overflow in \u003ccode\u003eANN401\u003c/code\u003e on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23912\"\u003e#23912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e, \u003ccode\u003eN815\u003c/code\u003e, \u003ccode\u003eN816\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23899\"\u003e#23899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix comment duplication in fixes (\u003ccode\u003ePERF401\u003c/code\u003e, \u003ccode\u003ePERF403\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23729\"\u003e#23729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Properly trigger \u003ccode\u003esuper\u003c/code\u003e change in nested class (\u003ccode\u003eUP008\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22677\"\u003e#22677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Avoid syntax errors in \u003ccode\u003eRUF036\u003c/code\u003e fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23764\"\u003e#23764\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Flag \u003ccode\u003eS501\u003c/code\u003e with \u003ccode\u003erequests.request\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23873\"\u003e#23873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Fix WSL detection in non-Docker containers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22879\"\u003e#22879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-print\u003c/code\u003e] Ignore \u003ccode\u003epprint\u003c/code\u003e calls with \u003ccode\u003estream=\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23787\"\u003e#23787\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs for Markdown code block formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23871\"\u003e#23871\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix misleading description for \u003ccode\u003eB904\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23731\"\u003e#23731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\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/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.6\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-12.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003elazy\u003c/code\u003e import parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23755\"\u003e#23755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for star-unpacking of comprehensions (PEP 798) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23788\"\u003e#23788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject semantic syntax errors for lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23757\"\u003e#23757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop a few rules from the preview default set (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23879\"\u003e#23879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag \u003ccode\u003eVariable.get()\u003c/code\u003e calls outside of task execution context (\u003ccode\u003eAIR003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23584\"\u003e#23584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag runtime-varying values in DAG/task constructor arguments (\u003ccode\u003eAIR304\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23631\"\u003e#23631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003edelattr-with-constant\u003c/code\u003e (\u003ccode\u003eB043\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23737\"\u003e#23737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Add \u003ccode\u003eTID254\u003c/code\u003e to enforce lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23777\"\u003e#23777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Allow users to ban lazy imports with \u003ccode\u003eTID254\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23847\"\u003e#23847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Retain \u003ccode\u003elazy\u003c/code\u003e keyword when sorting imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23762\"\u003e#23762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Add \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e automatically (\u003ccode\u003eUP006\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23260\"\u003e#23260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Support \u003ccode\u003enewline\u003c/code\u003e parameter in \u003ccode\u003eFURB101\u003c/code\u003e for Python 3.13+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23754\"\u003e#23754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add \u003ccode\u003eos-path-commonprefix\u003c/code\u003e (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23814\"\u003e#23814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add unsafe fix for os-path-commonprefix (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23852\"\u003e#23852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Limit \u003ccode\u003eRUF036\u003c/code\u003e to typing contexts; make it unsafe for non-typing-only (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23765\"\u003e#23765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Use starred unpacking for \u003ccode\u003eRUF017\u003c/code\u003e in Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23789\"\u003e#23789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e creating unwanted leading whitespace (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23773\"\u003e#23773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e breaking shebangs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23577\"\u003e#23577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve required annotation parentheses in annotated assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23865\"\u003e#23865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve type-expression parentheses in the formatter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23867\"\u003e#23867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Fix stack overflow in \u003ccode\u003eANN401\u003c/code\u003e on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23912\"\u003e#23912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e, \u003ccode\u003eN815\u003c/code\u003e, \u003ccode\u003eN816\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23899\"\u003e#23899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix comment duplication in fixes (\u003ccode\u003ePERF401\u003c/code\u003e, \u003ccode\u003ePERF403\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23729\"\u003e#23729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Properly trigger \u003ccode\u003esuper\u003c/code\u003e change in nested class (\u003ccode\u003eUP008\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22677\"\u003e#22677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Avoid syntax errors in \u003ccode\u003eRUF036\u003c/code\u003e fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23764\"\u003e#23764\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Flag \u003ccode\u003eS501\u003c/code\u003e with \u003ccode\u003erequests.request\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23873\"\u003e#23873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Fix WSL detection in non-Docker containers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22879\"\u003e#22879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-print\u003c/code\u003e] Ignore \u003ccode\u003epprint\u003c/code\u003e calls with \u003ccode\u003estream=\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23787\"\u003e#23787\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs for Markdown code block formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23871\"\u003e#23871\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix misleading description for \u003ccode\u003eB904\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23731\"\u003e#23731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zsol\"\u003e\u003ccode\u003e@​zsol\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/astral-sh/ruff/commit/e4c7f357777a2fdd34dbe6a98b1b7d3e7488f675\"\u003e\u003ccode\u003ee4c7f35\u003c/code\u003e\u003c/a\u003e Bump 0.15.6 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23919\"\u003e#23919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/edfe6c17a493669227da45ce7edc786208d9d0b0\"\u003e\u003ccode\u003eedfe6c1\u003c/code\u003e\u003c/a\u003e [ty] Narrow type context during collection literal inference (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23844\"\u003e#23844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/dd16d689abd9d0fa1caf4316e70479fd422b6142\"\u003e\u003ccode\u003edd16d68\u003c/code\u003e\u003c/a\u003e Exclude broken symlink in ecosystem check (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23921\"\u003e#23921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3f94c6ac6397cdc3160459d9d6e3892e3f3242dd\"\u003e\u003ccode\u003e3f94c6a\u003c/code\u003e\u003c/a\u003e Fix stack overflow in ANN401 on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23\"\u003e#23\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/91fc7bd3f936974d7107ba8fd0668bc251a55c58\"\u003e\u003ccode\u003e91fc7bd\u003c/code\u003e\u003c/a\u003e [ty] Fix false-positive diagnostics for PEP-604 union annotations on attribut...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/04229cffb44dfe8c64a0879eb3cea472a08d1565\"\u003e\u003ccode\u003e04229cf\u003c/code\u003e\u003c/a\u003e [ty] Initial test suite for PEP-728 \u003ccode\u003eTypedDict\u003c/code\u003e features (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23832\"\u003e#23832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/728b9d6fd300d492fc2572bcfade170141296f97\"\u003e\u003ccode\u003e728b9d6\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e,...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/88d1eecd261679fc9d1d10f30d814230a7f28513\"\u003e\u003ccode\u003e88d1eec\u003c/code\u003e\u003c/a\u003e [ty] Ensure a \u003ccode\u003etype[]\u003c/code\u003e type \u003ccode\u003eT\u003c/code\u003e is always considered assignable to a union th...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37cdd61406ad4965847c9baa7c3f6ca633887d68\"\u003e\u003ccode\u003e37cdd61\u003c/code\u003e\u003c/a\u003e Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a25a4df54aca67d23b4867ddad634fe0768fd6a2\"\u003e\u003ccode\u003ea25a4df\u003c/code\u003e\u003c/a\u003e [ty] Disambiguate duplicate-looking overloaded callables in union display (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.4...0.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `virtualenv` from 21.1.0 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/virtualenv/releases\"\u003evirtualenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3077\"\u003epypa/virtualenv#3077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3079\"\u003epypa/virtualenv#3079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd type annotations to embed wheel generator output by \u003ca href=\"https://github.com/rahuldevikar\"\u003e\u003ccode\u003e@​rahuldevikar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3085\"\u003epypa/virtualenv#3085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix broken README heading introduced in docs restructure by \u003ca href=\"https://github.com/rahuldevikar\"\u003e\u003ccode\u003e@​rahuldevikar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3088\"\u003epypa/virtualenv#3088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(bash): use BASH_SOURCE in activate relocation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3091\"\u003epypa/virtualenv#3091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(create): prevent venv from racing virtualenv on gitignore creation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3092\"\u003epypa/virtualenv#3092\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/virtualenv/compare/21.1.0...21.2.0\"\u003ehttps://github.com/pypa/virtualenv/compare/21.1.0...21.2.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/pypa/virtualenv/blob/main/docs/changelog.rst\"\u003evirtualenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eFeatures - 21.2.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate embed wheel generator (\u003ccode\u003etasks/upgrade_wheels.py\u003c/code\u003e) to include type annotations in generated output - by\n:user:\u003ccode\u003erahuldevikar\u003c/code\u003e. (:issue:\u003ccode\u003e3075\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes - 21.2.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePass \u003ccode\u003e--without-scm-ignore-files\u003c/code\u003e to subprocess venv on Python 3.13+ so virtualenv controls \u003ccode\u003e.gitignore\u003c/code\u003e creation,\nfixing flaky \u003ccode\u003etest_create_no_seed\u003c/code\u003e and \u003ccode\u003e--no-vcs-ignore\u003c/code\u003e being ignored in subprocess path - by\n:user:\u003ccode\u003egaborbernat\u003c/code\u003e. (:issue:\u003ccode\u003e3089\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eBASH_SOURCE[0]\u003c/code\u003e instead of \u003ccode\u003e$0\u003c/code\u003e in the bash activate script relocation fallback, fixing incorrect \u003ccode\u003ePATH\u003c/code\u003e\nwhen sourcing the activate script from a different directory - by :user:\u003ccode\u003egaborbernat\u003c/code\u003e. (:issue:\u003ccode\u003e3090\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003ev21.1.0 (2026-02-27)\u003c/p\u003e\n\u003chr /\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/pypa/virtualenv/commit/0b6f4445da2560cb11c4808ead464d94ffdf1b05\"\u003e\u003ccode\u003e0b6f444\u003c/code\u003e\u003c/a\u003e release 21.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/e1af35dc7808e75410c55490c35421f461af2920\"\u003e\u003ccode\u003ee1af35d\u003c/code\u003e\u003c/a\u003e 🐛 fix(create): prevent venv from racing virtualenv on gitignore creation (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3092\"\u003e#3092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/f05bf08f6e2b6fe313aa7378475a30d6151180e2\"\u003e\u003ccode\u003ef05bf08\u003c/code\u003e\u003c/a\u003e 🐛 fix(bash): use BASH_SOURCE in activate relocation (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3091\"\u003e#3091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/0cd0e09526863f46f91a4afc057f179fdacf3878\"\u003e\u003ccode\u003e0cd0e09\u003c/code\u003e\u003c/a\u003e fix broken README heading introduced in docs restructure (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3088\"\u003e#3088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/b7ab17e4739322cf2793ff348e8b2c15c6ebcffe\"\u003e\u003ccode\u003eb7ab17e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3087\"\u003e#3087\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/f2062bc8ece1d142523209af4785d302f83e6807\"\u003e\u003ccode\u003ef2062bc\u003c/code\u003e\u003c/a\u003e chore(deps): bump astral-sh/setup-uv from 4 to 7 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3086\"\u003e#3086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/eb27e55d716d8836b24296efa3a73b98ff1b29e8\"\u003e\u003ccode\u003eeb27e55\u003c/code\u003e\u003c/a\u003e Add type annotations to embed wheel generator output (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/fbb3bd183f2f98bfa68211e014db8995dae64b79\"\u003e\u003ccode\u003efbb3bd1\u003c/code\u003e\u003c/a\u003e chore(deps): bump peter-evans/create-pull-request from 7 to 8 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3081\"\u003e#3081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/a1d3963f1c078a2a7b56af14cf824e254531de65\"\u003e\u003ccode\u003ea1d3963\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3080\"\u003e#3080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/e768d5632065d45a06c4d2e99610e1c92a267166\"\u003e\u003ccode\u003ee768d56\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/upload-artifact from 4 to 7 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3082\"\u003e#3082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/virtualenv/compare/21.1.0...21.2.0\"\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 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/github/annotated-logger/pull/118","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/118","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/118/packages"},{"uuid":"4043325399","node_id":"PR_kwDODLJHgM7I9NqM","number":481,"state":"open","title":"Update pytest-github-actions-annotate-failures requirement from \u003c0.4.0,\u003e=0.3.0 to \u003e=0.3.0,\u003c0.5.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-09T04:47:57.000Z","updated_at":"2026-03-09T04:47:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"\u003c0.4.0,\u003e=0.3.0","new_version":"\u003e=0.3.0,\u003c0.5.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\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 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/sthagen/streamlit-streamlit/pull/481","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sthagen%2Fstreamlit-streamlit/issues/481","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/481/packages"},{"uuid":"4019602962","node_id":"PR_kwDOGUrTac7Hwaf3","number":879,"state":"open","title":"Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-04T01:55:58.000Z","updated_at":"2026-03-04T01:57:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/twsl/whos-there/pull/879","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/twsl%2Fwhos-there/issues/879","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/879/packages"},{"uuid":"4018976236","node_id":"PR_kwDOAALQjM7Huaq6","number":10168,"state":"open","title":"Chore(deps): Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-03T22:13:12.000Z","updated_at":"2026-03-03T22:19:19.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.3.0\u0026new-version=0.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 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/celery/celery/pull/10168","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/celery%2Fcelery/issues/10168","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10168/packages"},{"uuid":"4014704133","node_id":"PR_kwDOGA9Nm87Hgeka","number":613,"state":"closed","title":"Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0 in the dev-deps group","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-04T04:54:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-03T04:54:38.000Z","updated_at":"2026-03-04T04:54:44.000Z","time_to_close":86405,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":"the dev-deps group","ecosystem":"pip"},"body":"Bumps the dev-deps group with 1 update: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/kellerza/sunsynk/pull/613","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kellerza%2Fsunsynk/issues/613","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/613/packages"},{"uuid":"4014588632","node_id":"PR_kwDODcMJdM7HgHQd","number":20675,"state":"open","title":"core: bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-03T04:09:46.000Z","updated_at":"2026-03-03T04:23:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"core","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/goauthentik/authentik/pull/20675","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/goauthentik%2Fauthentik/issues/20675","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20675/packages"},{"uuid":"3853766526","node_id":"PR_kwDODMcPFc6_QaaD","number":54,"state":"closed","title":"chore(deps-dev): bump pytest-github-actions-annotate-failures from 0.1.8 to 0.3.0 in the development-dependencies group across 1 directory","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-03-01T11:13:21.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-25T19:47:39.000Z","updated_at":"2026-03-01T11:13:22.000Z","time_to_close":2993142,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":"the development-dependencies group across 1 directory","ecosystem":"pip"},"body":"Bumps the development-dependencies group with 1 update in the / directory: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.1.8\u0026new-version=0.3.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 \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/finswimmer/poetry/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/finswimmer%2Fpoetry/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"},{"uuid":"2879399271","node_id":"PR_kwDOPbpjzc6roCVn","number":20,"state":"open","title":"Bump the pip-deps group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-10-01T19:28:03.000Z","updated_at":"2025-10-01T19:28:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":12,"packages":[{"name":"pydantic","old_version":"2.11.7","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pandas","old_version":"2.3.1","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pypdf","old_version":"5.9.0","new_version":"6.1.1","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"rapidfuzz","old_version":"3.13.0","new_version":"3.14.1","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.1.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.11.9` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.1` | `2.3.3` |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.1.1` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.13.0` | `3.14.1` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.13.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `7.0.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.15.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.2` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\n\nUpdates `pydantic` from 2.11.7 to 2.11.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.1 to 2.3.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.1...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pypdf` from 5.9.0 to 6.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.1.1, 2025-09-28\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInsert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation (DOC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.1.0...6.1.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.1.0, 2025-09-21\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e) by \u003ca href=\"https://github.com/Arya-A-Nair\"\u003e\u003ccode\u003e@​Arya-A-Nair\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd all font metrics for base 14 Type 1 PDF fonts (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3363\"\u003e#3363\u003c/a\u003e) by \u003ca href=\"https://github.com/PJBrs\"\u003e\u003ccode\u003e@​PJBrs\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow deleting embedded files (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3461\"\u003e#3461\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python in FIPS mode for document identifier (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3438\"\u003e#3438\u003c/a\u003e) by \u003ca href=\"https://github.com/xnox\"\u003e\u003ccode\u003e@​xnox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGuard empty input to prevent IndexError (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3448\"\u003e#3448\u003c/a\u003e) by \u003ca href=\"https://github.com/KyleJung0828\"\u003e\u003ccode\u003e@​KyleJung0828\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix type hint for XMP metadata setter to add bytes type (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3464\"\u003e#3464\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.0.0...6.1.0\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.1.1, 2025-09-28\u003c/h2\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInsert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation (DOC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.1.0...6.1.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.1.0, 2025-09-21\u003c/h2\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd all font metrics for base 14 Type 1 PDF fonts (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3363\"\u003e#3363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow deleting embedded files (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3461\"\u003e#3461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for Python in FIPS mode for document identifier (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3438\"\u003e#3438\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGuard empty input to prevent IndexError (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3448\"\u003e#3448\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix type hint for XMP metadata setter to add bytes type (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3464\"\u003e#3464\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.0.0...6.1.0\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\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/py-pdf/pypdf/commit/9cb878c3f90a665a59e442d3c09da7b7b2a88af6\"\u003e\u003ccode\u003e9cb878c\u003c/code\u003e\u003c/a\u003e REL: 6.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/5848de32442033f03ad2c39bf3788f2853063268\"\u003e\u003ccode\u003e5848de3\u003c/code\u003e\u003c/a\u003e DOC: Document AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/322d810faa305f48c4cc487ea57534d87e0d0508\"\u003e\u003ccode\u003e322d810\u003c/code\u003e\u003c/a\u003e STY: Use removeprefix (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3469\"\u003e#3469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/506a1102a78eda2c2c32fc424c01fc73d8f5ad0a\"\u003e\u003ccode\u003e506a110\u003c/code\u003e\u003c/a\u003e BUG: Insert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1bb97b9aff4669dffdd87d20c86d9f8a3dc012f1\"\u003e\u003ccode\u003e1bb97b9\u003c/code\u003e\u003c/a\u003e MAINT: Correct two misspellings (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3476\"\u003e#3476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/e3a16d46ceeb62050393e33452a764bffa62b516\"\u003e\u003ccode\u003ee3a16d4\u003c/code\u003e\u003c/a\u003e BUG: Fix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/5c5b3bdd0d196add4c8608308d9c6e6a6f96f0d5\"\u003e\u003ccode\u003e5c5b3bd\u003c/code\u003e\u003c/a\u003e BUG: Make embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/d40f3596872e1d4e0d53da61a29015fc84816f21\"\u003e\u003ccode\u003ed40f359\u003c/code\u003e\u003c/a\u003e REL: 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/27b66aa7a0c4f4a69d5accabbc650d25af84cb27\"\u003e\u003ccode\u003e27b66aa\u003c/code\u003e\u003c/a\u003e ENH: Enhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b6fff56b51febd61727e5fbb1384c7b8ab9fd3f8\"\u003e\u003ccode\u003eb6fff56\u003c/code\u003e\u003c/a\u003e BUG: Fix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rapidfuzz` from 3.13.0 to 3.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/releases\"\u003erapidfuzz's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.14.1\u003c/h2\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFully disable line tracing in release builds\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.14.0\u003c/h2\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for freethreaded Python\u003c/li\u003e\n\u003cli\u003eadd python 3.14 wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eremove unused hook-dirs from pyinstaller config to fix a warning\u003c/li\u003e\n\u003cli\u003efixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003c/ul\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/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst\"\u003erapidfuzz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cp\u003e[3.14.1] - 2025-09-08\n^^^^^^^^^^^^^^^^^^^^^\nFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* Fully disable line tracing in release builds\n\u003cp\u003e[3.14.0] - 2025-08-27\n^^^^^^^^^^^^^^^^^^^^^\nChanged\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3.\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* add support for freethreaded Python\n* add python 3.14 wheels\n\u003cp\u003eRemoved\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* remove unused hook-dirs from pyinstaller config to fix a warning\n* fixed WRatio for a length ratio of exactly 8.0\n\u003cp\u003e[3.13.0] - 2025-04-03\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for arrays of type 'w'\u003c/li\u003e\n\u003cli\u003eadd support for any DTypeLike as dtype in \u003ccode\u003ecdist\u003c/code\u003e and \u003ccode\u003ecpdist\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eChanged\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* upgrade to ``rapidfuzz-cpp==3.3.2``\n\u003cp\u003e[3.12.2] - 2025-03-02\n^^^^^^^^^^^^^^^^^^^^^\nAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* added wheels for pypy 3.11\n\nChanged\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/5a1c243a5e5b05e73171b0c84566ce0c8f26448a\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5a1c243\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; remove outdated config\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/83048ebaeebd746f5bbe47826c0839950e38bf1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;83048eb\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; apply pre-commit\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/bdd210abcc12bd8a4bc2dff76dc80c3b6ed2e034\u0026quot;\u0026gt;\u0026lt;code\u0026gt;bdd210a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Remove Cython generation step from coverage workflow\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/5794199cd29b1c3b12adf0ad2b8da795d86dc807\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5794199\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fully disable line tracing\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/2fa2e539ef831105022627b0d0f5ad27cf5a0511\u0026quot;\u0026gt;\u0026lt;code\u0026gt;2fa2e53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; run more tests on arm systems\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/da7e03b0a1245551f67b80ded636c5a440df8225\u0026quot;\u0026gt;\u0026lt;code\u0026gt;da7e03b\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; tag version\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/4d1a90d256db2fd833b94eedc436c38498f6e3af\u0026quot;\u0026gt;\u0026lt;code\u0026gt;4d1a90d\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; drop python 3.9\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/a79f3a28dc2ed32b1a6f1eb60f87f2b7b9f66cc2\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a79f3a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; improve build scripting\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/9fb6a3e46be9c8266f97e096655c580af0323514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;9fb6a3e\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pypy is now built as part of the other builds\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/aab2d9c562ffb977d520c2a9bcb2193a5476c543\u0026quot;\u0026gt;\u0026lt;code\u0026gt;aab2d9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix type hint tests\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/compare/v3.13.0...v3.14.1\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump astral-sh/setup-uv from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2395\"\u003e#2395\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/ec0efaee4acfce198521e43caa3029b06cedd64a\"\u003e\u003ccode\u003eec0efae\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e from PyCQA/docs/discussion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8af675ffcbb25dc5b5c2ff52863afc2923a818e2\"\u003e\u003ccode\u003e8af675f\u003c/code\u003e\u003c/a\u003e Update docs discussions channel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/a03dae897f7e4a2b2eeb01d094b2c112b10ff0b7\"\u003e\u003ccode\u003ea03dae8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e from PyCQA/build/py314-classifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/2232a26fd15d43ad0fca0e662d311ca4cf0d161e\"\u003e\u003ccode\u003e2232a26\u003c/code\u003e\u003c/a\u003e Add python 3.14 classifier and badge\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ec48dd7c823bcebf6da93db5eb4921a7808e6bb3\"\u003e\u003ccode\u003eec48dd7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e from dvarrazzo/fix/drop-pkg-resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/be46cd476d1a61996a6a4469177edf0869df531e\"\u003e\u003ccode\u003ebe46cd4\u003c/code\u003e\u003c/a\u003e refactor: make importlib metadata package import lazy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/18ecd0c3bf0bc7d6eb9bb5b9a72297f172a57663\"\u003e\u003ccode\u003e18ecd0c\u003c/code\u003e\u003c/a\u003e chore: drop branch guarding unsupported Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1d42e564d9bd1e026e8d635880336dd0528c2c29\"\u003e\u003ccode\u003e1d42e56\u003c/code\u003e\u003c/a\u003e fix: drop use of non-standard pkg_resources API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0c8fc82fdf1b60065d447f3f7307f01c51d44b01\"\u003e\u003ccode\u003e0c8fc82\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e from PyCQA/dependabot/github_actions/github-actions-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3478763347707341e3ce729008acc9cf73a0ff35\"\u003e\u003ccode\u003e3478763\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 in the github-actions group\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.13.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.13.2\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-09-25.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-path-method\u003c/code\u003e (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20264\"\u003e#20264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003emap-without-explicit-strict\u003c/code\u003e (\u003ccode\u003eB912\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20429\"\u003e#20429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bultins\u003c/code\u003e] Detect class-scope builtin shadowing in decorators, default args, and attribute initializers (\u003ccode\u003eA003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20178\"\u003e#20178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Implement \u003ccode\u003elogging-eager-conversion\u003c/code\u003e (\u003ccode\u003eRUF065\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19942\"\u003e#19942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003e.pyw\u003c/code\u003e files by default when linting and formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20458\"\u003e#20458\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeduplicate input paths (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20105\"\u003e#20105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Preserve trailing commas for single-element lists (\u003ccode\u003eC409\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19571\"\u003e#19571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Avoid syntax error from conflict with \u003ccode\u003ePIE790\u003c/code\u003e (\u003ccode\u003ePYI021\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20010\"\u003e#20010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Correct fix for positive \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20056\"\u003e#20056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix \u003ccode\u003eUP008\u003c/code\u003e not to apply when \u003ccode\u003e__class__\u003c/code\u003e is a local variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20497\"\u003e#20497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix \u003ccode\u003eB004\u003c/code\u003e to skip invalid \u003ccode\u003ehasattr\u003c/code\u003e/\u003ccode\u003egetattr\u003c/code\u003e calls (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20486\"\u003e#20486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Replace \u003ccode\u003e-nan\u003c/code\u003e with \u003ccode\u003enan\u003c/code\u003e when using the value to construct a \u003ccode\u003eDecimal\u003c/code\u003e (\u003ccode\u003eFURB164\u003c/code\u003e ) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20391\"\u003e#20391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate import path to \u003ccode\u003eruff-wasm-web\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20539\"\u003e#20539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Clarify the supported hashing functions (\u003ccode\u003eS324\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20534\"\u003e#20534\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Allow hover quick fixes to appear for overlapping diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20527\"\u003e#20527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Fix non‑BMP code point handling in quick fixes and markers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20526\"\u003e#20526\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/second-ed\"\u003e\u003ccode\u003e@​second-ed\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ShikChen\"\u003e\u003ccode\u003e@​ShikChen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PieterCK\"\u003e\u003ccode\u003e@​PieterCK\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/GDYendell\"\u003e\u003ccode\u003e@​GDYendell\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntbre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.13.2\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.13.2\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-09-25.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-path-method\u003c/code\u003e (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20264\"\u003e#20264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003emap-without-explicit-strict\u003c/code\u003e (\u003ccode\u003eB912\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20429\"\u003e#20429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bultins\u003c/code\u003e] Detect class-scope builtin shadowing in decorators, default args, and attribute initializers (\u003ccode\u003eA003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20178\"\u003e#20178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Implement \u003ccode\u003elogging-eager-conversion\u003c/code\u003e (\u003ccode\u003eRUF065\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19942\"\u003e#19942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003e.pyw\u003c/code\u003e files by default when linting and formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20458\"\u003e#20458\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeduplicate input paths (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20105\"\u003e#20105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Preserve trailing commas for single-element lists (\u003ccode\u003eC409\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19571\"\u003e#19571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Avoid syntax error from conflict with \u003ccode\u003ePIE790\u003c/code\u003e (\u003ccode\u003ePYI021\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20010\"\u003e#20010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Correct fix for positive \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20056\"\u003e#20056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix \u003ccode\u003eUP008\u003c/code\u003e not to apply when \u003ccode\u003e__class__\u003c/code\u003e is a local variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20497\"\u003e#20497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix \u003ccode\u003eB004\u003c/code\u003e to skip invalid \u003ccode\u003ehasattr\u003c/code\u003e/\u003ccode\u003egetattr\u003c/code\u003e calls (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20486\"\u003e#20486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Replace \u003ccode\u003e-nan\u003c/code\u003e with \u003ccode\u003enan\u003c/code\u003e when using the value to construct a \u003ccode\u003eDecimal\u003c/code\u003e (\u003ccode\u003eFURB164\u003c/code\u003e ) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20391\"\u003e#20391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate import path to \u003ccode\u003eruff-wasm-web\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20539\"\u003e#20539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Clarify the supported hashing functions (\u003ccode\u003eS324\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20534\"\u003e#20534\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Allow hover quick fixes to appear for overlapping diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20527\"\u003e#20527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Fix non‑BMP code point handling in quick fixes and markers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20526\"\u003e#20526\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/second-ed\"\u003e\u003ccode\u003e@​second-ed\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ShikChen\"\u003e\u003ccode\u003e@​ShikChen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PieterCK\"\u003e\u003ccode\u003e@​PieterCK\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/GDYendell\"\u003e\u003ccode\u003e@​GDYendell\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntbre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.13.1\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/astral-sh/ruff/commit/b0bdf0334e38417f8617057cd0392a4b53954120\"\u003e\u003ccode\u003eb0bdf03\u003c/code\u003e\u003c/a\u003e Bump 0.13.2 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20576\"\u003e#20576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7331d393c555ece88aa69f685562163790ddf611\"\u003e\u003ccode\u003e7331d39\u003c/code\u003e\u003c/a\u003e Update rooster to 0.1.0 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20575\"\u003e#20575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/529e5fa6c24ea68501adb18245eab27c701598d2\"\u003e\u003ccode\u003e529e5fa\u003c/code\u003e\u003c/a\u003e [ty] Ecosystem analyzer: timing report (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20571\"\u003e#20571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/efbb80f7475c63b62981444d5c429109ff12ad32\"\u003e\u003ccode\u003eefbb80f\u003c/code\u003e\u003c/a\u003e [ty] Remove hack in protocol satisfiability check (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20568\"\u003e#20568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9f3cffc65cb834661e17263245761a66f9474af0\"\u003e\u003ccode\u003e9f3cffc\u003c/code\u003e\u003c/a\u003e Add 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/21be94ac33f445d8a681babec6c56ca3d1b67156\"\u003e\u003ccode\u003e21be94a\u003c/code\u003e\u003c/a\u003e [ty] Explicitly test assignability/subtyping between unions of nominal types ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b7d5dc98c193cc5cab00d557b6a392d35137d990\"\u003e\u003ccode\u003eb7d5dc9\u003c/code\u003e\u003c/a\u003e [ty] Add tests for interactions of \u003ccode\u003e@classmethod\u003c/code\u003e, \u003ccode\u003e@staticmethod\u003c/code\u003e, and proto...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e1bb74b25a0f730a5baff263d753ffe03cf857b1\"\u003e\u003ccode\u003ee1bb74b\u003c/code\u003e\u003c/a\u003e [ty] Match variadic argument to variadic parameter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20511\"\u003e#20511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/edeb45804ef9dbe348d393f3ab77288062a3c77e\"\u003e\u003ccode\u003eedeb458\u003c/code\u003e\u003c/a\u003e [ty] fallback to resolve_real_module in file_to_module (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20461\"\u003e#20461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/bea92c822980b1575d58542dffa2c960393d7603\"\u003e\u003ccode\u003ebea92c8\u003c/code\u003e\u003c/a\u003e [ty] More precise type inference for dictionary literals (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20523\"\u003e#20523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 to 7.0.0\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\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"},{"uuid":"3472030686","node_id":"PR_kwDOGE74Bs6reYWC","number":25,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 13 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-10-01T05:04:59.000Z","updated_at":"2025-10-01T05:05:01.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":13,"packages":[{"name":"pre-commit","old_version":"4.1.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"setuptools","old_version":"75.8.0","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"coverage","old_version":"7.6.12","new_version":"7.10.7","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"deepdiff","old_version":"8.2.0","new_version":"8.6.1","repository_url":"https://github.com/seperman/deepdiff"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.0.20241016","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 13 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.1.0` | `4.3.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `75.8.0` | `80.9.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.12` | `7.10.7` |\n| [deepdiff](https://github.com/seperman/deepdiff) | `8.2.0` | `8.6.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.5.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20241016` | `2.32.4.20250913` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.3.0` |\n\n\nUpdates `pre-commit` from 4.1.0 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.1.0...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 75.8.0 to 80.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev80.9.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet a deadline for the removal of pkg_resources later this year (December). (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved reliance on pkg_resources in test_wheel. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.8.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplaced more references to pkg_resources with importlib equivalents in wheel odule. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRestore explicit LICENSE file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5001\"\u003e#5001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved no longer used build dependency on \u003ccode\u003ecoherent.licensed\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly attempt to fetch eggs for unsatisfied requirements. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIn installer, when discovering egg dists, let metadata discovery search each egg. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved usage of pkg_resources from installer. Set an official deadline on the installer deprecation to 2025-10-31. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4997\"\u003e#4997\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4996\"\u003e#4996\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.6.0\u003c/h1\u003e\n\u003cp\u003eFeatures\u003c/p\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/pypa/setuptools/commit/9c4d383631d3951fcae0afd73b5d08ff5a262976\"\u003e\u003ccode\u003e9c4d383\u003c/code\u003e\u003c/a\u003e Bump version: 80.8.0 → 80.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/05cb3c84f1422f3b26ccfb00f4c43886dc55b9bc\"\u003e\u003ccode\u003e05cb3c8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5014\"\u003e#5014\u003c/a\u003e from pypa/debt/pkg_resources-deadline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3b0bf5bd43034c448a10e7102788fe710b4bb496\"\u003e\u003ccode\u003e3b0bf5b\u003c/code\u003e\u003c/a\u003e Adjust ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/9c28cdffd423f83e43dbfd39fc793c251da48585\"\u003e\u003ccode\u003e9c28cdf\u003c/code\u003e\u003c/a\u003e Set a deadline for the removal of pkg_resources later this year (December).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/a3bfef95193bf0ff78ef6e0fb8c63a3728f443b0\"\u003e\u003ccode\u003ea3bfef9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5013\"\u003e#5013\u003c/a\u003e from DimitriPapadopoulos/ISC\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/64bf9d0ce88a09748f702bd7736d9ec2879aa6ef\"\u003e\u003ccode\u003e64bf9d0\u003c/code\u003e\u003c/a\u003e Enforce ruff/flake8-implicit-str-concat rules (ISC)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3250c25197b299658cfd4d0db67770fc29b47277\"\u003e\u003ccode\u003e3250c25\u003c/code\u003e\u003c/a\u003e Fix broken link in docs (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4947\"\u003e#4947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5ccf50e01ab0d303f524c065f2cb51042b34bc55\"\u003e\u003ccode\u003e5ccf50e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5006\"\u003e#5006\u003c/a\u003e from pypa/feature/remove-more-pkg_resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/134e587c0ba0b59e1661f08a45e6d6d1ecd24329\"\u003e\u003ccode\u003e134e587\u003c/code\u003e\u003c/a\u003e Suppress nitpicky typecheck in pyright.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/0bf2663a19f2d947697997d125c3c880df2011b7\"\u003e\u003ccode\u003e0bf2663\u003c/code\u003e\u003c/a\u003e Add news fragment.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v75.8.0...v80.9.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.6.12 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1921\"\u003enedbat/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003enedbat/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\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/nedbat/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.12...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.2.0 to 8.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/seperman/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.6.1\u003c/h2\u003e\n\u003cp\u003eDeepDiff 8-6-1\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePatched security vulnerability in the Delta class which was vulnerable to class pollution via its constructor, and when combined with a gadget available in DeltaDiff itself, it could lead to Denial of Service and Remote Code Execution (via insecure Pickle deserialization).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdating deprecated pydantic calls\u003c/li\u003e\n\u003cli\u003eSwitching to pyproject.toml\u003c/li\u003e\n\u003cli\u003eFix for moving nested tables when using iterable_compare_func.  by\u003c/li\u003e\n\u003cli\u003eFix recursion depth limit when hashing numpy.datetime64\u003c/li\u003e\n\u003cli\u003eMoving from legacy setuptools use to pyproject.toml\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epytz is not required.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdding BaseOperatorPlus base class for custom operators\u003c/li\u003e\n\u003cli\u003edefault_timezone can be passed now to set your default timezone to something other than UTC.\u003c/li\u003e\n\u003cli\u003eNew summarization algorithm that produces valid json\u003c/li\u003e\n\u003cli\u003eBetter type hint support\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/seperman/deepdiff/commit/60ac5b903dbd662e0e83bf7b481df97d42f693df\"\u003e\u003ccode\u003e60ac5b9\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/683756ef03064047744dbf4978ca27d2211a846f\"\u003e\u003ccode\u003e683756e\u003c/code\u003e\u003c/a\u003e Bump version: 8.6.0 → 8.6.1 and add security vulnerability notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/c69c06c13f75e849c770ade3f556cd16209fd183\"\u003e\u003ccode\u003ec69c06c\u003c/code\u003e\u003c/a\u003e Security fix: Prevent class pollution and remote code execution in Delta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/b639fece73fe3ce4120261fdcff3cc7b826776e3\"\u003e\u003ccode\u003eb639fec\u003c/code\u003e\u003c/a\u003e updating the docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/6f3d5eeb81083c816cf1a4f9eff3f1de2150a96a\"\u003e\u003ccode\u003e6f3d5ee\u003c/code\u003e\u003c/a\u003e Bump version: 8.5.0 → 8.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/388a60ecd1c033de3f2302ade67e386a8875b6be\"\u003e\u003ccode\u003e388a60e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/seperman/deepdiff/issues/557\"\u003e#557\u003c/a\u003e from seperman/dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/0978fb88240b0d3daaf327d26b7fbcf85360578c\"\u003e\u003ccode\u003e0978fb8\u003c/code\u003e\u003c/a\u003e adding docs for 8.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/d469a4c34c6b65cab25088b0d3963561b80acf9b\"\u003e\u003ccode\u003ed469a4c\u003c/code\u003e\u003c/a\u003e making type hints compatible with old python\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/e16507c15c9069e9011ba4e298a2ec031c68cd3f\"\u003e\u003ccode\u003ee16507c\u003c/code\u003e\u003c/a\u003e fixing type hints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/33de0874bbc356ae83e74157f105a516e4db3d7a\"\u003e\u003ccode\u003e33de087\u003c/code\u003e\u003c/a\u003e adding type hints to search\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/seperman/deepdiff/compare/8.2.0...8.6.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.4 to 8.4.2\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.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\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/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\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/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\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\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/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\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.0.0 to 7.0.0\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\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode\u003epyproject.toml\u003c/code\u003e and use \u003ccode\u003ehatchling \u0026lt;https://pypi.org/project/hatchling/\u0026gt;\u003c/code\u003e_ for\nbuilding.\nContributed by Ofek Lev in \u003ccode\u003e[#551](https://github.com/pytest-dev/pytest-cov/issues/551) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/551\u0026gt;\u003c/code\u003e_\nwith some extras in \u003ccode\u003e[#716](https://github.com/pytest-dev/pytest-cov/issues/716) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/716\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved some not really necessary testing deps like \u003ccode\u003esix\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.3.0 (2025-09-06)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for markdown reports.\nContributed by Marcos Boger in \u003ccode\u003e[#712](https://github.com/pytest-dev/pytest-cov/issues/712) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/712\u0026gt;\u003c/code\u003e_\nand \u003ccode\u003e[#714](https://github.com/pytest-dev/pytest-cov/issues/714) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/714\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed some formatting issues in docs.\nAnonymous contribution in \u003ccode\u003e[#706](https://github.com/pytest-dev/pytest-cov/issues/706) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/706\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\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\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-cov/commit/224d8964caad90074a8cf6dc8720b8f70f31629b\"\u003e\u003ccode\u003e224d896\u003c/code\u003e\u003c/a\u003e Bump version: 6.3.0 → 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/73424e3999f865eac72e27f09d5fe11b9703cfd6\"\u003e\u003ccode\u003e73424e3\u003c/code\u003e\u003c/a\u003e Cleanup the docs a bit.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/36f1cc2967831dbd4c8aa70086fc86dc495f8b9a\"\u003e\u003ccode\u003e36f1cc2\u003c/code\u003e\u003c/a\u003e Bump pins in template.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f299c590a63a48e51e3ae949993dc7bb1f1d480d\"\u003e\u003ccode\u003ef299c59\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/25f0b2e0cdbc345c0d3e49170f7a328c3e0d805f\"\u003e\u003ccode\u003e25f0b2e\u003c/code\u003e\u003c/a\u003e Update docs/config.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/bb23eacc5531fb8f499213d8420407e0d72f88e3\"\u003e\u003ccode\u003ebb23eac\u003c/code\u003e\u003c/a\u003e Improve configuration docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/a19531e91e1ab753ccf648a2d9bab08a6fddebb9\"\u003e\u003ccode\u003ea19531e\u003c/code\u003e\u003c/a\u003e Switch from build/pre-commit to uv/prek - this should make this faster.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/82f999391073f2fb8ae422af452602f310086a2a\"\u003e\u003ccode\u003e82f9993\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/211b5cd41c29916bc643b4a11b00578ba4fd6fe8\"\u003e\u003ccode\u003e211b5cd\u003c/code\u003e\u003c/a\u003e Fix links.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/97aadd74bcbc00a2078d240e8fe871dd62b83d80\"\u003e\u003ccode\u003e97aadd7\u003c/code\u003e\u003c/a\u003e Update some ci config, reformat and apply some lint fixes.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/529\"\u003e#529\u003c/a\u003e: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\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/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#529](https://github.com/pytest-dev/pytest-mock/issues/529) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/529\u0026gt;\u003c/code\u003e_: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\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-mock/commit/e1b5c62a38c5a05cae614aef3847f240ba50d269\"\u003e\u003ccode\u003ee1b5c62\u003c/code\u003e\u003c/a\u003e Release 3.15.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/184eb190d6be417f5f33727bcbc9704909479498\"\u003e\u003ccode\u003e184eb19\u003c/code\u003e\u003c/a\u003e Set \u003ccode\u003espy_return_iter\u003c/code\u003e only when explicitly requested (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/537\"\u003e#537\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/4fa0088a0aa85eefb1313bd97adf43889bf1f647\"\u003e\u003ccode\u003e4fa0088\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5aff33ce71ed4620acc43dc41cb3b198bcf4cb0\"\u003e\u003ccode\u003ef5aff33\u003c/code\u003e\u003c/a\u003e Fix test failure with pytest 8+ and verbose mode (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/535\"\u003e#535\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/adc41873c9d6aa69b87e3f108c93a29c847869aa\"\u003e\u003ccode\u003eadc4187\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/533\"\u003e#533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/95ad5700609aae73c6f767b8cc2ccfb2483e0f5c\"\u003e\u003ccode\u003e95ad570\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/532\"\u003e#532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e696bf02c199b1f7d0c48adb450f40e5a75b699a\"\u003e\u003ccode\u003ee696bf0\u003c/code\u003e\u003c/a\u003e Fix standalone mock support (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5b29b03ce9581cfcd867dd6c04a970fb2c861291\"\u003e\u003ccode\u003e5b29b03\u003c/code\u003e\u003c/a\u003e Fix gen-release-notes script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7d22ef4e560351832e60687d8bd15ebe2785ff3b\"\u003e\u003ccode\u003e7d22ef4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/528\"\u003e#528\u003c/a\u003e from pytest-dev/release-3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-randomly` from 3.16.0 to 4.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/blob/main/CHANGELOG.rst\"\u003epytest-randomly's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.1 (2025-09-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove the random state caching, which would grow without bound, leaking memory in long test runs.\nThe caching was added to slightly speed up re-using the same (final) seed, but since the final seed is now different for each test, it has no effect.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#690](https://github.com/pytest-dev/pytest-randomly/issues/690) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/687\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eModify Numpy seed restriction, replacing hashing with a modulo operation.\nThe extra work to hash is unnecessary now that we generate a final seed per test with CRC32.\nThis change saves ~500ns per test when Numpy is installed.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#691](https://github.com/pytest-dev/pytest-randomly/issues/691) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/691\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSupport Python 3.14.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse a different random seed per test, based on the test ID.\u003c/p\u003e\n\u003cp\u003eThis change should mean that tests exercise more random data values in a given run, and that any randomly-generated identifiers have a lower chance of collision when stored in a shared resource like a database.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#687](https://github.com/pytest-dev/pytest-randomly/issues/687) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/687\u0026gt;\u003c/code\u003e\u003cstrong\u003e.\nThanks to Bryce Drennan for the suggestion in \u003ccode\u003eIssue [#600](https://github.com/pytest-dev/pytest-randomly/issues/600) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/600\u0026gt;\u003c/code\u003e\u003c/strong\u003e and initial implementation in \u003ccode\u003ePR [#617](https://github.com/pytest-dev/pytest-randomly/issues/617) \u0026lt;https://github.com/pytest-dev/pytest-randomly/pull/617\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove from MD5 to CRC32 for hashing test IDs, as it’s 5x faster and we don’t need cryptographic security.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eIssue [#686](https://github.com/pytest-dev/pytest-randomly/issues/686) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/686\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/pytest-dev/pytest-randomly/commit/50de0961ad3479901a153a4a89ff58ca7898b550\"\u003e\u003ccode\u003e50de096\u003c/code\u003e\u003c/a\u003e Version 4.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/f9406ec4452d05a865ee67b83fed58bc8f914bac\"\u003e\u003ccode\u003ef9406ec\u003c/code\u003e\u003c/a\u003e Modify Numpy seed restriction (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/691\"\u003e#691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/22049aabcd1e19012c878dccd5fb1ad728221331\"\u003e\u003ccode\u003e22049aa\u003c/code\u003e\u003c/a\u003e Remove the random state caching (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/690\"\u003e#690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/ded2e547566368d8751a13bf6b6e6ac8b509caa2\"\u003e\u003ccode\u003eded2e54\u003c/code\u003e\u003c/a\u003e Version 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/cb9b86128c9e79284f1bfad0dbd5d4c5427b5dfc\"\u003e\u003ccode\u003ecb9b861\u003c/code\u003e\u003c/a\u003e Move from MD5 to CRC32 for hashing test IDs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/688\"\u003e#688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/bd697bd670943c54b8d21e713dea58ab92508d08\"\u003e\u003ccode\u003ebd697bd\u003c/code\u003e\u003c/a\u003e Use a different random seed per test (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/687\"\u003e#687\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/acadf4684fd12e5e9ca14243167f44b8d302f093\"\u003e\u003ccode\u003eacadf46\u003c/code\u003e\u003c/a\u003e Generate default seed on demand (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/685\"\u003e#685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/f818056fa7933f9f08ff6c5cda0d78ecee14d0af\"\u003e\u003ccode\u003ef818056\u003c/code\u003e\u003c/a\u003e Support Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/684\"\u003e#684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/456f7877992809b4e152bf3a356c0a4658275fb7\"\u003e\u003ccode\u003e456f787\u003c/code\u003e\u003c/a\u003e Drop unused import of xdist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/e00b7822dff8061d26ff2b4bdf9dc1a3ea823092\"\u003e\u003ccode\u003ee00b782\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/682\"\u003e#682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/compare/3.16.0...4.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-xdist` from 3.6.1 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst\"\u003epytest-xdist's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003epytest-xdist 3.8.0 (2025-06-30)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1083](https://github.com/pytest-dev/pytest-xdist/issues/1083) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1083\u0026gt;\u003c/code\u003e_: Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e option to control whether to automatically reorder tests in loadscope for tests where relative ordering matters. This only applies when using \u003ccode\u003eloadscope\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, [test_file_1, test_file_2, ..., test_file_n] are given as input test files, if \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e is used, for either worker, the \u003ccode\u003etest_file_a\u003c/code\u003e will be executed before \u003ccode\u003etest_file_b\u003c/code\u003e only if \u003ccode\u003ea \u0026lt; b\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default behavior is to reorder the tests to maximize the number of tests that can be executed in parallel.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003epytest-xdist 3.7.0 (2025-05-26)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1142](https://github.com/pytest-dev/pytest-xdist/issues/1142) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1142\u0026gt;\u003c/code\u003e_: Added support for Python 3.13.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1144](https://github.com/pytest-dev/pytest-xdist/issues/1144) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1144\u0026gt;\u003c/code\u003e_: The internal \u003ccode\u003esteal\u003c/code\u003e command is now atomic - it unschedules either all requested tests or none.\u003c/p\u003e\n\u003cp\u003eThis is a prerequisite for group/scope support in the \u003ccode\u003eworksteal\u003c/code\u003e scheduler, so test groups won't be broken up incorrectly.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1170](https://github.com/pytest-dev/pytest-xdist/issues/1170) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1170\u0026gt;\u003c/code\u003e_: Add the \u003ccode\u003e--px\u003c/code\u003e arg to create proxy gateways.\u003c/p\u003e\n\u003cp\u003eProxy gateways are passed to additional gateways using the \u003ccode\u003evia\u003c/code\u003e keyword.\nThey can serve as a way to run multiple workers on remote machines.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1200](https://github.com/pytest-dev/pytest-xdist/issues/1200) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1200\u0026gt;\u003c/code\u003e_: Now multiple \u003ccode\u003exdist_group\u003c/code\u003e markers are considered when assigning tests to groups (order does not matter).\u003c/p\u003e\n\u003cp\u003ePreviously, only the last marker would assign a test to a group, but now if a test has multiple \u003ccode\u003exdist_group\u003c/code\u003e marks applied (for example via parametrization or via fixtures), they are merged to make a new group.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemovals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#1162](https://github.com/pytest-dev/pytest-xdist/issues/1162) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1162\u0026gt;\u003c/code\u003e_: Dropped support for EOL Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTrivial Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1092](https://github.com/pytest-dev/pytest-xdist/issues/1092) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1092\u0026gt;\u003c/code\u003e_: Update an error message to better indicate where users should go for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1190](https://github.com/pytest-dev/pytest-xdist/issues/1190) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1190\u0026gt;\u003c/code\u003e_: Switched to using a SPDX license identifier introduced in PEP 639.\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-xdist/commit/1e3e4dc16523c8a8f6c67d95a950166420718c99\"\u003e\u003ccode\u003e1e3e4dc\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/600aad575a4e4382855145b0c464d51b8f0b7242\"\u003e\u003ccode\u003e600aad5\u003c/code\u003e\u003c/a\u003e Ensure all xdist group names are strings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/9d7ba5b5fbbbe26793fbfb7cb1903eb69425cf09\"\u003e\u003ccode\u003e9d7ba5b\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1217\"\u003e#1217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/532f07fb181bb1546eda79bbe6b46bdb56c699e1\"\u003e\u003ccode\u003e532f07f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1210\"\u003e#1210\u003c/a\u003e from pytest-dev/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/0883ad085e0cf039c8ae13eb2789c1076544d225\"\u003e\u003ccode\u003e0883ad0\u003c/code\u003e\u003c/a\u003e Fix Path usage in \u003ccode\u003etest_rsync_roots_no_roots\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/58a51bc14015d211761e44c2bdacab09c3893668\"\u003e\u003ccode\u003e58a51bc\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/59a2ad0150697b9ff837f3ae8dcf6e074d5a114b\"\u003e\u003ccode\u003e59a2ad0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1220\"\u003e#1220\u003c/a\u003e from pytest-dev/dependabot/github_actions/github-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/d42b9c72044855236c68286ca3bdb34486a05872\"\u003e\u003ccode\u003ed42b9c7\u003c/code\u003e\u003c/a\u003e build(deps): bump hynek/build-and-inspect-python-package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/ebfcb99072aed3503fda5175245f28895a0204bb\"\u003e\u003ccode\u003eebfcb99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1206\"\u003e#1206\u003c/a\u003e from pytest-dev/release-3.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/23b7fd6054298a530b02b33d07007b3082a36277\"\u003e\u003ccode\u003e23b7fd6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1207\"\u003e#1207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.15.0 to 1.18.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.18.2\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash on recursive alias (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19845\"\u003e19845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd additional guidance for stubtest errors when runtime is \u003ccode\u003eobject.__init__\u003c/code\u003e (Stephen Morton, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19733\"\u003e19733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix handling of None values in f-string expressions in mypyc (BobTheBuidler, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19846\"\u003e19846\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003eAnthony Sottile\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDaniel Hnyk\u003c/li\u003e\n\u003cli\u003eEmily\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJahongir Qurbonov\u003c/li\u003e\n\u003cli\u003eJelle Zijlstra\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eOmer Hadari\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\u003c/li\u003e\n\u003cli\u003ePrinceNaroliya\u003c/li\u003e\n\u003cli\u003eRandolf Scholz\u003c/li\u003e\n\u003cli\u003eRobsdedude\u003c/li\u003e\n\u003cli\u003eSaul Shanabrook\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003eStephen Morton\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.17\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.17 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\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/python/mypy/commit/df05f05555ee62dbdb9960c64cad186172e92be1\"\u003e\u003ccode\u003edf05f05\u003c/code\u003e\u003c/a\u003e remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/01a7a1285d03cb7a330359b22cb462aacb5f9720\"\u003e\u003ccode\u003e01a7a12\u003c/code\u003e\u003c/a\u003e Update changelog for 1.18.2 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19873\"\u003e#19873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ca5abf09f3bfc543ac9c18a364696bc5da20bc03\"\u003e\u003ccode\u003eca5abf0\u003c/code\u003e\u003c/a\u003e Typeshed cherry-pick: Make type of \u003ccode\u003eunitest.mock.Any\u003c/code\u003e a subclass of \u003ccode\u003eAny\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9d794b57d9c5b03d61caa3286756c05e0ae3021b\"\u003e\u003ccode\u003e9d794b5\u003c/code\u003e\u003c/a\u003e [mypyc] fix: inappropriate \u003ccode\u003eNone\u003c/code\u003es in f-strings (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2c0510c84868b6bb42ef0f305b701e530a85c25f\"\u003e\u003ccode\u003e2c0510c\u003c/code\u003e\u003c/a\u003e stubtest: additional guidance on errors when runtime is object.\u003cstrong\u003einit\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19733\"\u003e#19733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2f3f03c3e39e68dbfa3544c01a34f99803b3e1c2\"\u003e\u003ccode\u003e2f3f03c\u003c/code\u003e\u003c/a\u003e Bump version to 1.18.2+dev for point release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/76698412bc1f3ca99000d52649acd5a0e06aa71d\"\u003e\u003ccode\u003e7669841\u003c/code\u003e\u003c/a\u003e Fix crash on recursive alias in indirection.py (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19845\"\u003e#19845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/03fbaa941bccc3a9f8aea796d586603b67119bf2\"\u003e\u003ccode\u003e03fbaa9\u003c/code\u003e\u003c/a\u003e bump version to 1.18.1 due to wheels failure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b44a1fbf0cf9fd90fd29d6bcd9f64c55dd2fd4c8\"\u003e\u003ccode\u003eb44a1fb\u003c/code\u003e\u003c/a\u003e removed +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7197a99d1aebb1b7a584f82a53c44efb7dddf136\"\u003e\u003ccode\u003e7197a99\u003c/code\u003e\u003c/a\u003e Removed Unreleased in the Changelog for Release 1.18 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.15.0...v1.18.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.0.20241016 to 2.32.4.20250913\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest...\n\n_Description has been truncated_","html_url":"https://github.com/yokomotod/poetry/pull/25","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yokomotod%2Fpoetry/issues/25","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/25/packages"},{"uuid":"3466379896","node_id":"PR_kwDOPuTSec6rLQGG","number":41,"state":"open","title":"chore(deps-pip): bump pytest-github-actions-annotate-failures from 0.2.0 to 0.3.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-29T19:45:51.000Z","updated_at":"2025-09-29T19:48:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-pip)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.2.0 to 0.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.2.0\u0026new-version=0.3.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/nickbaxter18/websitos/pull/41","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickbaxter18%2Fwebsitos/issues/41","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/41/packages"},{"uuid":"2868412854","node_id":"PR_kwDOMt9I9c6q-IG2","number":78,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 34 updates","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-09-28T21:07:37.000Z","updated_at":"2025-09-28T21:07:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":34,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.7","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.14","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.4.0","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.405","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.7","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"6.1.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 34 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.7` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.14` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.4.0` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.405` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.13.2` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.7` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `6.1.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.15.0` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1921\"\u003enedbat/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003enedbat/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\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/nedbat/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.14\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6667ae3392c3e2178469779352012d4518c8cdc0\"\u003e\u003ccode\u003e6667ae3\u003c/code\u003e\u003c/a\u003e v2.6.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/0ce88278a87decaf8a7b266074a0044a8fb8dd5c\"\u003e\u003ccode\u003e0ce8827\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/537\"\u003e#537\u003c/a\u003e from LNSD/add-meson-options-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/29d1fcc8d1dafe99cf82e4c3a6200acdd17490fd\"\u003e\u003ccode\u003e29d1fcc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/536\"\u003e#536\u003c/a\u003e from mike325/fix/add_robot_filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/daf602344d904fd56a85ae76f0a2594ddcebc479\"\u003e\u003ccode\u003edaf6023\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003emeson.options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6d493646beb1b740c4b871dd7692b5ab453c1beb\"\u003e\u003ccode\u003e6d49364\u003c/code\u003e\u003c/a\u003e fix: add robot filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/53fdb98ef92dc697d7b84cf07dbb3e6e5d7493f6\"\u003e\u003ccode\u003e53fdb98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/531\"\u003e#531\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/ffc2322be9c429f69761a777a2f9f1adc87680d0\"\u003e\u003ccode\u003effc2322\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redi...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/78","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/78","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/78/packages"},{"uuid":"2849331215","node_id":"PR_kwDOOoM8J86p1VgP","number":66,"state":"closed","title":"pip(deps-dev): bump pytest-github-actions-annotate-failures from 0.2.0 to 0.3.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-09-22T12:42:03.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T12:38:35.000Z","updated_at":"2025-09-22T12:42:03.000Z","time_to_close":208,"merged_at":"2025-09-22T12:42:03.000Z","merged_by":"github-actions[bot]","closed_by":null,"dependency_metadata":{"prefix":"pip(deps-dev)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.2.0 to 0.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.2.0\u0026new-version=0.3.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/philipp-horstenkamp/auto_print/pull/66","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/philipp-horstenkamp%2Fauto_print/issues/66","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/66/packages"},{"uuid":"3415584727","node_id":"PR_kwDOMt9I9c6ogxBU","number":77,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-14T21:06:59.000Z","updated_at":"2025-09-14T21:08:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":33,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.6","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.14","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.4.0","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.405","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.0","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.13.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.7","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"6.1.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 33 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.6` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.14` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.4.0` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.405` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.0` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.13.0` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.7` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `6.1.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.15.0` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.6\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.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003epatch = fork\u003c/code\u003e for times when the built-in forking support is\ninsufficient.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003epatch = execv\u003c/code\u003e also inherits the entire coverage configuration now.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-10-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\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/nedbat/coveragepy/commit/88c55ff87437f7e59b42d131d0e2b6ce413546bf\"\u003e\u003ccode\u003e88c55ff\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/01d89959bfa825f661121e0f8d173f3ae1ecedac\"\u003e\u003ccode\u003e01d8995\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9b0c24ffc17840464c2343b702a6ee44e10fcadf\"\u003e\u003ccode\u003e9b0c24f\u003c/code\u003e\u003c/a\u003e docs: thanks Alex \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2038\"\u003e#2038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/66d69108654f6fc1de916a37fc06ac898091aa2d\"\u003e\u003ccode\u003e66d6910\u003c/code\u003e\u003c/a\u003e fix: make \u003ccode\u003esource\u003c/code\u003e paths absolute where they exist. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003e#1499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bb3382f50f2b91aebb046d665334a5d361e5ddc5\"\u003e\u003ccode\u003ebb3382f\u003c/code\u003e\u003c/a\u003e build: no need for the combine/html times now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9ea349a164527832a49faa3eeec628d59ef75c7c\"\u003e\u003ccode\u003e9ea349a\u003c/code\u003e\u003c/a\u003e lab: warn_executed.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/808c9b48af3ad7b567182d383eb31451615664e0\"\u003e\u003ccode\u003e808c9b4\u003c/code\u003e\u003c/a\u003e build: changing metacov.ini should trigger metacov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/384f5f22bd1ef52000d80922de03922a58ff936c\"\u003e\u003ccode\u003e384f5f2\u003c/code\u003e\u003c/a\u003e build: oops, some 'if's are really line pragmas\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a7224af73365ba2d217f0e0966c7873c5bac3a67\"\u003e\u003ccode\u003ea7224af\u003c/code\u003e\u003c/a\u003e perf: pre-compute the mapping between other_db.context and main.context (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2038\"\u003e#2038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5c00c5ba4bcd4f7da6a9f0ccd0797e0944415e8a\"\u003e\u003ccode\u003e5c00c5b\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2039\"\u003e#2039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.14\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6667ae3392c3e2178469779352012d4518c8cdc0\"\u003e\u003ccode\u003e6667ae3\u003c/code\u003e\u003c/a\u003e v2.6.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/0ce88278a87decaf8a7b266074a0044a8fb8dd5c\"\u003e\u003ccode\u003e0ce8827\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/537\"\u003e#537\u003c/a\u003e from LNSD/add-meson-options-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/29d1fcc8d1dafe99cf82e4c3a6200acdd17490fd\"\u003e\u003ccode\u003e29d1fcc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/536\"\u003e#536\u003c/a\u003e from mike325/fix/add_robot_filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/daf602344d904fd56a85ae76f0a2594ddcebc479\"\u003e\u003ccode\u003edaf6023\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003emeson.options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6d493646beb1b740c4b871dd7692b5ab453c1beb\"\u003e\u003ccode\u003e6d49364\u003c/code\u003e\u003c/a\u003e fix: add robot filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/53fdb98ef92dc697d7b84cf07dbb3e6e5d7493f6\"\u003e\u003ccode\u003e53fdb98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/531\"\u003e#531\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/ffc2322be9c429f69761a777a2f9f1adc87680d0\"\u003e\u003ccode\u003effc2322\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redirect.github.com/davi...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/77","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/77","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/77/packages"},{"uuid":"3376331534","node_id":"PR_kwDOPbpjzc6meNzg","number":14,"state":"open","title":"Bump the pip-deps group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-02T14:40:24.000Z","updated_at":"2025-10-01T19:27:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":11,"packages":[{"name":"pandas","old_version":"2.3.1","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pypdf","old_version":"5.9.0","new_version":"6.0.0","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"rapidfuzz","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.0.1","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.12.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps the pip-deps group with 11 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.1` | `2.3.2` |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.0.0` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.13.0` | `3.14.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.12.11` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `6.2.1` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.14.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\n\nUpdates `pandas` from 2.3.1 to 2.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\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/pandas-dev/pandas/commit/4665c10899bc413b639194f6fb8665a5c70f7db5\"\u003e\u003ccode\u003e4665c10\u003c/code\u003e\u003c/a\u003e RLS: 2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/633c68b91808441eba7d73b630a82b713ba19da8\"\u003e\u003ccode\u003e633c68b\u003c/code\u003e\u003c/a\u003e DOC: fix syntax in whatsnew file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/456ad4702cb017aab36e2d09a4029b1b085198f5\"\u003e\u003ccode\u003e456ad47\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62152\"\u003e#62152\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.2 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6cae6444444ed7943ceffbd5990cd8249dd5b47c\"\u003e\u003ccode\u003e6cae644\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: move and reword whatsnew note for replace fix (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/57865\"\u003eGH-57865\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a91c50a58c372cddf104fd60241c7284bbf8fc80\"\u003e\u003ccode\u003ea91c50a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62147\"\u003e#62147\u003c/a\u003e on branch 2.3.x (DOC: correct and rewrite string migration...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/f7a2cfdf2ed08016167ae6c5e577c54949a849b2\"\u003e\u003ccode\u003ef7a2cfd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG/DEPR: logical operation with bool and string (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61995\"\u003e#61995\u003c/a\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/7981a43db4339826a3ce5020e9b1b931e604e5bd\"\u003e\u003ccode\u003e7981a43\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62124\"\u003e#62124\u003c/a\u003e on branch 2.3.x (CI/BLD: don't use strict xfail for '%m.%Y...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fafbcbd03d1721830f4df8255abdab341db2a583\"\u003e\u003ccode\u003efafbcbd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG(CoW): also raise for chained assignment for .at / .iat (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/3ac64a714886d917ca24ba637a85c4aaf563fc1b\"\u003e\u003ccode\u003e3ac64a7\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: Fix Series.str.contains with compiled regex on Arrow st...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/1f2dc4fd8a2503773b6f90cb5e8cc5c3172c3c11\"\u003e\u003ccode\u003e1f2dc4f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix Series.str.fullmatch() and Series.str.match() with ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.1...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pypdf` from 5.9.0 to 6.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\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/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\u003c/a\u003e\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/py-pdf/pypdf/commit/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595\"\u003e\u003ccode\u003e0dd5773\u003c/code\u003e\u003c/a\u003e REL: 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/bb3a69030fde7da545229438ff327b8c971cef49\"\u003e\u003ccode\u003ebb3a690\u003c/code\u003e\u003c/a\u003e SEC: Limit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/979af6defdcbfac38ff1ae67594633f4ae548242\"\u003e\u003ccode\u003e979af6d\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignore of deprecation warning (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b622a2f51dd788f052245d48ad2f9a76cefca919\"\u003e\u003ccode\u003eb622a2f\u003c/code\u003e\u003c/a\u003e ENH: Move BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/0b58493ac3b725a342da3a53d5634b197e698ab2\"\u003e\u003ccode\u003e0b58493\u003c/code\u003e\u003c/a\u003e MAINT: Cleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/794504bb87f8fac0fb8d5830c9bcfb6530100431\"\u003e\u003ccode\u003e794504b\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignoring Ruff rule TD005 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3422\"\u003e#3422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/56f0eaa630a607d85d2137fac9ee60ed64c310a4\"\u003e\u003ccode\u003e56f0eaa\u003c/code\u003e\u003c/a\u003e DEV: Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3423\"\u003e#3423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1b3177b4eba8f71e565cc9a0dee8d7e64312d148\"\u003e\u003ccode\u003e1b3177b\u003c/code\u003e\u003c/a\u003e ROB: Skip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/8000cbe20eb81fd19b2dbacc1dc5a7df022d15ee\"\u003e\u003ccode\u003e8000cbe\u003c/code\u003e\u003c/a\u003e MAINT: Remove duplicate CCITT processing (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3415\"\u003e#3415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/ad85a228321e4dcac8a4b14fc7f84d1d2f8f4832\"\u003e\u003ccode\u003ead85a22\u003c/code\u003e\u003c/a\u003e MAINT: Remove erroneous comment (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3406\"\u003e#3406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rapidfuzz` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/releases\"\u003erapidfuzz's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.14.0\u003c/h2\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for freethreaded Python\u003c/li\u003e\n\u003cli\u003eadd python 3.14 wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eremove unused hook-dirs from pyinstaller config to fix a warning\u003c/li\u003e\n\u003cli\u003efixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003c/ul\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/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst\"\u003erapidfuzz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cp\u003e[3.14.0] - 2025-08-27\n^^^^^^^^^^^^^^^^^^^^^\nChanged\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* upgrade to ``Cython==3.1.3``. This enables compilation with free threaded python.\n* upgrade to ``rapidfuzz-cpp==3.3.``\n\u003cp\u003eAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* add support for freethreaded Python\n* add python 3.14 wheels\n\nRemoved\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;dropped support for Python3.9\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;drop 32 bit linux wheels\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Fixed\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;* remove unused hook-dirs from pyinstaller config to fix a warning\n* fixed WRatio for a length ratio of exactly 8.0\n\n[3.13.0] - 2025-04-03\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;add support for arrays of type 'w'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;add support for any DTypeLike as dtype in \u0026lt;code\u0026gt;cdist\u0026lt;/code\u0026gt; and \u0026lt;code\u0026gt;cpdist\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Changed\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;* upgrade to ``rapidfuzz-cpp==3.3.2``\n\n[3.12.2] - 2025-03-02\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u003c/code\u003e\u003c/pre\u003e\n\u003cul\u003e\n\u003cli\u003eadded wheels for pypy 3.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eChanged\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.0.12\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e[3.12.1] - 2025-01-30\n^^^^^^^^^^^^^^^^^^^^^\nFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/rapidfuzz/RapidFuzz/commit/da7e03b0a1245551f67b80ded636c5a440df8225\"\u003e\u003ccode\u003eda7e03b\u003c/code\u003e\u003c/a\u003e tag version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/4d1a90d256db2fd833b94eedc436c38498f6e3af\"\u003e\u003ccode\u003e4d1a90d\u003c/code\u003e\u003c/a\u003e drop python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/a79f3a28dc2ed32b1a6f1eb60f87f2b7b9f66cc2\"\u003e\u003ccode\u003ea79f3a2\u003c/code\u003e\u003c/a\u003e improve build scripting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/9fb6a3e46be9c8266f97e096655c580af0323514\"\u003e\u003ccode\u003e9fb6a3e\u003c/code\u003e\u003c/a\u003e pypy is now built as part of the other builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/aab2d9c562ffb977d520c2a9bcb2193a5476c543\"\u003e\u003ccode\u003eaab2d9c\u003c/code\u003e\u003c/a\u003e fix type hint tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/8638ab26ffc3dc389ff2bac141a58a5808bd00b1\"\u003e\u003ccode\u003e8638ab2\u003c/code\u003e\u003c/a\u003e fixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/8bda2f0c5e35abd046948f43d69cec4d38c12d36\"\u003e\u003ccode\u003e8bda2f0\u003c/code\u003e\u003c/a\u003e add python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/18e7eb29a2dedad80d6d4e5dc04b6499bc81b020\"\u003e\u003ccode\u003e18e7eb2\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/9c7d5f22e7496f1ccb4f11e5b990aabbf1b5145c\"\u003e\u003ccode\u003e9c7d5f2\u003c/code\u003e\u003c/a\u003e fix typing test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/c97b61f70b484cbaf03abf1819adc463c1e8f334\"\u003e\u003ccode\u003ec97b61f\u003c/code\u003e\u003c/a\u003e Fix None missing in extractOne return type\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/compare/v3.13.0...v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 3 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2334\"\u003e#2334\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003enit: Fix deprecation message link (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2220\"\u003e#2220\u003c/a\u003e) \u003ca href=\"https://github.com/syou6162\"\u003e\u003ccode\u003e@​syou6162\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with \u003ccode\u003eas\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix google style test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2336\"\u003e#2336\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 2 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2329\"\u003e#2329\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDependency updates round 1 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2325\"\u003e#2325\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun \u003ccode\u003epre-commit autoupdate\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2321\"\u003e#2321\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003e--diff\u003c/code\u003e to be used with \u003ccode\u003e--jobs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewemake\u003c/code\u003e has 80 chars hard limit, not 79 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix errors on \u003ccode\u003emain\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2320\"\u003e#2320\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed syntax error (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2289\"\u003e#2289\u003c/a\u003e) \u003ca href=\"https://github.com/Sergio-prog\"\u003e\u003ccode\u003e@​Sergio-prog\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: typo (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2298\"\u003e#2298\u003c/a\u003e) \u003ca href=\"https://github.com/Rotzbua\"\u003e\u003ccode\u003e@​Rotzbua\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003esort_reexports\u003c/code\u003e code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/c8ab4a5b21bac924d106e3103dd7c979fdd0f9bc\"\u003e\u003ccode\u003ec8ab4a5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e from xinydev/fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ee477e919867ffcd09d25a605f38f08a87c56f2e\"\u003e\u003ccode\u003eee477e9\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/790bb06e294d77461e7696bbdb0186289c9a4f87\"\u003e\u003ccode\u003e790bb06\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e from cclauss/ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/168d8508ae41a5f5f2fb1340b86fde2bfdb8266a\"\u003e\u003ccode\u003e168d850\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/6165d6b6e99dfd15b57896080359a46ba99eacda\"\u003e\u003ccode\u003e6165d6b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e from PyCQA/ci/remove-safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f776259106076faa8a758ebfd4abb3a736493024\"\u003e\u003ccode\u003ef776259\u003c/code\u003e\u003c/a\u003e Remove Safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/176ada2694779b6f4a366c7f8a4d788dc93b5d27\"\u003e\u003ccode\u003e176ada2\u003c/code\u003e\u003c/a\u003e Ruff rules PT for pytest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3305894bd9338e715a1ac6eb912cf608154ca471\"\u003e\u003ccode\u003e3305894\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e from cclauss/ruff-rules-B017-B028-E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1708f3e87ad1b1885e5bddcd29799a9434207738\"\u003e\u003ccode\u003e1708f3e\u003c/code\u003e\u003c/a\u003e Ruff rules B017, B028, and E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1157b58fb70b9166f75f567fdbe45d6fa2cbfc5c\"\u003e\u003ccode\u003e1157b58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e from cclauss/ruff\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.12.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.11\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Extend \u003ccode\u003eAIR311\u003c/code\u003e and \u003ccode\u003eAIR312\u003c/code\u003e rules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20082\"\u003e#20082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Replace wrong path \u003ccode\u003eairflow.io.storage\u003c/code\u003e with \u003ccode\u003eairflow.io.store\u003c/code\u003e (\u003ccode\u003eAIR311\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20081\"\u003e#20081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx-in-async-function\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging-format\u003c/code\u003e] Add auto-fix for f-string logging calls (\u003ccode\u003eG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19303\"\u003e#19303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH211\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20009\"\u003e#20009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Make \u003ccode\u003ePTH100\u003c/code\u003e fix unsafe because it can change behavior (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20100\"\u003e#20100\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Fix false positives caused by \u003ccode\u003e__class__\u003c/code\u003e cell handling (\u003ccode\u003eF841\u003c/code\u003e, \u003ccode\u003ePLE0117\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20048\"\u003e#20048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (\u003ccode\u003eF401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20115\"\u003e#20115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positive for t-strings in \u003ccode\u003edefault-factory-kwarg\u003c/code\u003e (\u003ccode\u003eRUF026\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20032\"\u003e#20032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19647\"\u003e#19647\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Handle empty t-strings in \u003ccode\u003eunnecessary-empty-iterable-within-deque-call\u003c/code\u003e (\u003ccode\u003eRUF037\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20045\"\u003e#20045\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003eD413\u003c/code\u003e links in docstrings convention FAQ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20089\"\u003e#20089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Update links to the table showing the correspondence between \u003ccode\u003eos\u003c/code\u003e and \u003ccode\u003epathlib\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20103\"\u003e#20103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Avasam\"\u003e\u003ccode\u003e@​Avasam\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Gankra\"\u003e\u003ccode\u003e@​Gankra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JelleZijlstra\"\u003e\u003ccode\u003e@​JelleZijlstra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Lee-W\"\u003e\u003ccode\u003e@​Lee-W\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PrettyWood\"\u003e\u003ccode\u003e@​PrettyWood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Renkai\"\u003e\u003ccode\u003e@​Renkai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hamirmahal\"\u003e\u003ccode\u003e@​hamirmahal\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.11\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Extend \u003ccode\u003eAIR311\u003c/code\u003e and \u003ccode\u003eAIR312\u003c/code\u003e rules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20082\"\u003e#20082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Replace wrong path \u003ccode\u003eairflow.io.storage\u003c/code\u003e with \u003ccode\u003eairflow.io.store\u003c/code\u003e (\u003ccode\u003eAIR311\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20081\"\u003e#20081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx-in-async-function\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging-format\u003c/code\u003e] Add auto-fix for f-string logging calls (\u003ccode\u003eG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19303\"\u003e#19303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH211\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20009\"\u003e#20009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Make \u003ccode\u003ePTH100\u003c/code\u003e fix unsafe because it can change behavior (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20100\"\u003e#20100\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Fix false positives caused by \u003ccode\u003e__class__\u003c/code\u003e cell handling (\u003ccode\u003eF841\u003c/code\u003e, \u003ccode\u003ePLE0117\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20048\"\u003e#20048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (\u003ccode\u003eF401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20115\"\u003e#20115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positive for t-strings in \u003ccode\u003edefault-factory-kwarg\u003c/code\u003e (\u003ccode\u003eRUF026\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20032\"\u003e#20032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19647\"\u003e#19647\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Handle empty t-strings in \u003ccode\u003eunnecessary-empty-iterable-within-deque-call\u003c/code\u003e (\u003ccode\u003eRUF037\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20045\"\u003e#20045\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003eD413\u003c/code\u003e links in docstrings convention FAQ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20089\"\u003e#20089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Update links to the table showing the correspondence between \u003ccode\u003eos\u003c/code\u003e and \u003ccode\u003epathlib\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20103\"\u003e#20103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.12.10\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Implement fix for \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add fixes for \u003ccode\u003ePTH102\u003c/code\u003e and \u003ccode\u003ePTH103\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19514\"\u003e#19514\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Handle multiple continuation lines after module docstring (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19818\"\u003e#19818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid reporting \u003ccode\u003e__future__\u003c/code\u003e features as unnecessary when they are used (\u003ccode\u003eUP010\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Handle nested \u003ccode\u003eOptional\u003c/code\u003es (\u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19770\"\u003e#19770\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epycodestyle\u003c/code\u003e] Make \u003ccode\u003eE731\u003c/code\u003e fix unsafe instead of display-only for class assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19700\"\u003e#19700\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Add secondary annotation showing previous definition (\u003ccode\u003eF811\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19900\"\u003e#19900\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix description of global config file discovery strategy (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19188\"\u003e#19188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate outdated links to \u003ca href=\"https://typing.python.org/en/latest/source/stubs.html\"\u003ehttps://typing.python.org/en/latest/source/stubs.html\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19992\"\u003e#19992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Remove unused import in example (\u003ccode\u003eANN401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20000\"\u003e#20000\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/astral-sh/ruff/commit/c2bc15bc15103f46b55b6f35b1d0ce815fdfc547\"\u003e\u003ccode\u003ec2bc15b\u003c/code\u003e\u003c/a\u003e Bump 0.12.11 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20136\"\u003e#20136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e586f6dcc426bdceddf43e811aaace460e4f56f9\"\u003e\u003ccode\u003ee586f6d\u003c/code\u003e\u003c/a\u003e [ty] Benchmarks for problematic implicit instance attributes cases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20133\"\u003e#20133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76a6b7e3e2061de320a17ab7513708809019aecc\"\u003e\u003ccode\u003e76a6b7e\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (`F4...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1ce65714c05faa85b177d5be8d16814820e23032\"\u003e\u003ccode\u003e1ce6571\u003c/code\u003e\u003c/a\u003e Move GitLab output rendering to \u003ccode\u003eruff_db\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20117\"\u003e#20117\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d9aaacd01f9da1219013c5413a94db7d487298d7\"\u003e\u003ccode\u003ed9aaacd\u003c/code\u003e\u003c/a\u003e [ty] Evaluate reachability of non-definitely-bound to Ambiguous (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19579\"\u003e#19579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/18eaa659c1ea9a03bee798e161d2f2db454e154f\"\u003e\u003ccode\u003e18eaa65\u003c/code\u003e\u003c/a\u003e [ty] Introduce a representation for the top/bottom materialization of an inva...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/af259faed57f2428da4fa09aab03dbb96b0f160e\"\u003e\u003ccode\u003eaf259fa\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d75ef3823c7dc7c6a0dc38dbc42ab9f8075424b6\"\u003e\u003ccode\u003ed75ef38\u003c/code\u003e\u003c/a\u003e [ty] print diagnostics with fully qualified name to disambiguate some cases (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/89ca493fd963bb3ba875b170989d9468d2d1a5bd\"\u003e\u003ccode\u003e89ca493\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4b80f5fa4f08dd0948761e15e36f5138658793e4\"\u003e\u003ccode\u003e4b80f5f\u003c/code\u003e\u003c/a\u003e [ty] Optimize TDD atom ordering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20098\"\u003e#20098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.12.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 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\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.0 (2024-10-29)\u003c/p\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-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/v4.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.10.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/415\"\u003e#415\u003c/a\u003e: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/420\"\u003e#420\u003c/a\u003e: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/417\"\u003e#417\u003c/a\u003e: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/410\"\u003e#410\u003c/a\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ca href=\"https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\"\u003eWhy you shouldn't invoke setup.py directly\u003c/a\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.12.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003e#390\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.11.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#415](https://github.com/pytest-dev/pytest-mock/issues/415) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/415\u0026gt;\u003c/code\u003e_: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#420](https://github.com/pytest-dev/pytest-mock/issues/420) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/420\u0026gt;\u003c/code\u003e_: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#417](https://github.com/pytest-dev/pytest-mock/issues/417) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/417\u0026gt;\u003c/code\u003e_: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#410](https://github.com/pytest-dev/pytest-mock/issues/410) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/410\u0026gt;\u003c/code\u003e\u003cem\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ccode\u003eWhy you shouldn't invoke setup.py directly \u0026lt;https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\u0026gt;\u003c/code\u003e\u003c/em\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.12.0 (2023-10-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"},{"uuid":"3349918361","node_id":"PR_kwDOMt9I9c6lHRHg","number":75,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-24T21:22:26.000Z","updated_at":"2025-09-14T23:01:01.720Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":32,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.5","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.13","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.3.8","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.404","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.12.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.6","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"5.3.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.14.1","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.5` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.13` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.3.8` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.404` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `6.2.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.14.1` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.12.10` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.6` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `5.3.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.14.1` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.5\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.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003epatch = fork\u003c/code\u003e for times when the built-in forking support is\ninsufficient.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003epatch = execv\u003c/code\u003e also inherits the entire coverage configuration now.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-10-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\nstranded there and not combined into the totals, as described in \u003ccode\u003eissue 2025\u003c/code\u003e_.  This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Windows (or maybe only some Windows?) the patch would fail with a\n\u003ccode\u003eModuleNotFound\u003c/code\u003e error trying to import coverage.  This is now fixed,\nclosing \u003ccode\u003eissue 2022\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOriginally only options set in the coverage configuration file would apply\nto subprocesses.  Options set on the \u003ccode\u003ecoverage run\u003c/code\u003e command line (such as\n\u003ccode\u003e--branch\u003c/code\u003e) wouldn't be communicated to the subprocesses.  This could\nlead to combining failures, as described in \u003ccode\u003eissue 2021\u003c/code\u003e_. Now the entire\nconfiguration is used in subprocesses, regardless of its origin.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003edebug=patch\u003c/code\u003e to help diagnose problems.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: really close all SQLite databases, even in-memory ones. Closes `issue\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/nedbat/coveragepy/commit/810abeb149fff925e49eab37ceaee60cb2878f7d\"\u003e\u003ccode\u003e810abeb\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3c8f1b518cf933040059fd85b482827ed205e0d1\"\u003e\u003ccode\u003e3c8f1b5\u003c/code\u003e\u003c/a\u003e build: use --universal to keep platform conditions in .pip files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/107ae05233005f8a5d497d8492c6410428dbbc28\"\u003e\u003ccode\u003e107ae05\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/b5bc6d409aefc11d0277fbf8af9c930bea686ed5\"\u003e\u003ccode\u003eb5bc6d4\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a5c18cc5eadc9df04005420207d53d74a94b9adf\"\u003e\u003ccode\u003ea5c18cc\u003c/code\u003e\u003c/a\u003e style: auto-generated changes shouldn't trigger ruff re-formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/1f9f84079aef5aab496381502aa818ea0574982a\"\u003e\u003ccode\u003e1f9f840\u003c/code\u003e\u003c/a\u003e build: tooling for ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9ee5b3e9e053168caa4e7bd32389b5592ad9b503\"\u003e\u003ccode\u003e9ee5b3e\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bfeb2aec1de7c298060b0c972f86d0f1f3e4da71\"\u003e\u003ccode\u003ebfeb2ae\u003c/code\u003e\u003c/a\u003e style: fix things so pylint is happy with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/82467f72306efdb207af09ace27b6b3ed4c7ad6f\"\u003e\u003ccode\u003e82467f7\u003c/code\u003e\u003c/a\u003e chore: \u003ccode\u003eruff format .\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0a7b73346bc498a089df8cc7d4168dab7a326a06\"\u003e\u003ccode\u003e0a7b733\u003c/code\u003e\u003c/a\u003e refactor: remove unused things from lab/\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.13\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a3399b87beba789ab56ab395737a9b7453ad58f\"\u003e\u003ccode\u003e1a3399b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/529\"\u003e#529\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1097f76716bf2c93d86fea0e802c8c19df471c5c\"\u003e\u003ccode\u003e1097f76\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bbfa5787afa5dce7508f4d91fea70fa1fb6b3dd8\"\u003e\u003ccode\u003ebbfa578\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/528\"\u003e#528\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/536d75194e326b7bdb6c5d6e0a66a6658d4a98ff\"\u003e\u003ccode\u003e536d751\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/e1c38fedb35173288c0b7abdabb8545e4ad46290\"\u003e\u003ccode\u003ee1c38fe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/526\"\u003e#526\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/d084d035b45bdf83a9d28b64977ae4629cacf2c2\"\u003e\u003ccode\u003ed084d03\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/40af39f8124a4e8029ff3716c2b0bbf2e1e5fb1e\"\u003e\u003ccode\u003e40af39f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/524\"\u003e#524\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/229\"\u003e#229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"http...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/75","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/75","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/75/packages"},{"uuid":"2761192683","node_id":"PR_kwDOPhcO_M6klHTr","number":1,"state":"open","title":"Bump the development-dependencies group with 2 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-20T22:12:08.000Z","updated_at":"2025-08-20T22:12:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development-dependencies","update_count":2,"packages":[{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 2 updates: [urllib3](https://github.com/urllib3/urllib3) and [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.0\"\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/autocode07/python-poetry__poetry.1c059ead/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/autocode07%2Fpython-poetry__poetry.1c059ead/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"},{"uuid":"3324068746","node_id":"PR_kwDOPbpjzc6jx6zC","number":12,"state":"open","title":"Bump the pip-deps group with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-15T01:37:33.000Z","updated_at":"2025-09-01T23:47:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":9,"packages":[{"name":"pypdf","old_version":"5.9.0","new_version":"6.0.0","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.0.1","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.12.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 9 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.0.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.12.9` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `6.2.1` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.14.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\nUpdates `pypdf` from 5.9.0 to 6.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\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/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\u003c/a\u003e\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/py-pdf/pypdf/commit/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595\"\u003e\u003ccode\u003e0dd5773\u003c/code\u003e\u003c/a\u003e REL: 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/bb3a69030fde7da545229438ff327b8c971cef49\"\u003e\u003ccode\u003ebb3a690\u003c/code\u003e\u003c/a\u003e SEC: Limit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/979af6defdcbfac38ff1ae67594633f4ae548242\"\u003e\u003ccode\u003e979af6d\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignore of deprecation warning (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b622a2f51dd788f052245d48ad2f9a76cefca919\"\u003e\u003ccode\u003eb622a2f\u003c/code\u003e\u003c/a\u003e ENH: Move BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/0b58493ac3b725a342da3a53d5634b197e698ab2\"\u003e\u003ccode\u003e0b58493\u003c/code\u003e\u003c/a\u003e MAINT: Cleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/794504bb87f8fac0fb8d5830c9bcfb6530100431\"\u003e\u003ccode\u003e794504b\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignoring Ruff rule TD005 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3422\"\u003e#3422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/56f0eaa630a607d85d2137fac9ee60ed64c310a4\"\u003e\u003ccode\u003e56f0eaa\u003c/code\u003e\u003c/a\u003e DEV: Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3423\"\u003e#3423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1b3177b4eba8f71e565cc9a0dee8d7e64312d148\"\u003e\u003ccode\u003e1b3177b\u003c/code\u003e\u003c/a\u003e ROB: Skip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/8000cbe20eb81fd19b2dbacc1dc5a7df022d15ee\"\u003e\u003ccode\u003e8000cbe\u003c/code\u003e\u003c/a\u003e MAINT: Remove duplicate CCITT processing (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3415\"\u003e#3415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/ad85a228321e4dcac8a4b14fc7f84d1d2f8f4832\"\u003e\u003ccode\u003ead85a22\u003c/code\u003e\u003c/a\u003e MAINT: Remove erroneous comment (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3406\"\u003e#3406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 3 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2334\"\u003e#2334\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003enit: Fix deprecation message link (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2220\"\u003e#2220\u003c/a\u003e) \u003ca href=\"https://github.com/syou6162\"\u003e\u003ccode\u003e@​syou6162\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with \u003ccode\u003eas\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix google style test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2336\"\u003e#2336\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 2 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2329\"\u003e#2329\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDependency updates round 1 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2325\"\u003e#2325\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun \u003ccode\u003epre-commit autoupdate\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2321\"\u003e#2321\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003e--diff\u003c/code\u003e to be used with \u003ccode\u003e--jobs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewemake\u003c/code\u003e has 80 chars hard limit, not 79 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix errors on \u003ccode\u003emain\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2320\"\u003e#2320\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed syntax error (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2289\"\u003e#2289\u003c/a\u003e) \u003ca href=\"https://github.com/Sergio-prog\"\u003e\u003ccode\u003e@​Sergio-prog\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: typo (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2298\"\u003e#2298\u003c/a\u003e) \u003ca href=\"https://github.com/Rotzbua\"\u003e\u003ccode\u003e@​Rotzbua\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003esort_reexports\u003c/code\u003e code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/c8ab4a5b21bac924d106e3103dd7c979fdd0f9bc\"\u003e\u003ccode\u003ec8ab4a5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e from xinydev/fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ee477e919867ffcd09d25a605f38f08a87c56f2e\"\u003e\u003ccode\u003eee477e9\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/790bb06e294d77461e7696bbdb0186289c9a4f87\"\u003e\u003ccode\u003e790bb06\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e from cclauss/ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/168d8508ae41a5f5f2fb1340b86fde2bfdb8266a\"\u003e\u003ccode\u003e168d850\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/6165d6b6e99dfd15b57896080359a46ba99eacda\"\u003e\u003ccode\u003e6165d6b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e from PyCQA/ci/remove-safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f776259106076faa8a758ebfd4abb3a736493024\"\u003e\u003ccode\u003ef776259\u003c/code\u003e\u003c/a\u003e Remove Safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/176ada2694779b6f4a366c7f8a4d788dc93b5d27\"\u003e\u003ccode\u003e176ada2\u003c/code\u003e\u003c/a\u003e Ruff rules PT for pytest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3305894bd9338e715a1ac6eb912cf608154ca471\"\u003e\u003ccode\u003e3305894\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e from cclauss/ruff-rules-B017-B028-E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1708f3e87ad1b1885e5bddcd29799a9434207738\"\u003e\u003ccode\u003e1708f3e\u003c/code\u003e\u003c/a\u003e Ruff rules B017, B028, and E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1157b58fb70b9166f75f567fdbe45d6fa2cbfc5c\"\u003e\u003ccode\u003e1157b58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e from cclauss/ruff\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.12.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.9\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Add check for \u003ccode\u003eairflow.secrets.cache.SecretCache\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/17707\"\u003e#17707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Offer a safe fix for multi-digit zeros (\u003ccode\u003eRUF064\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19847\"\u003e#19847\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19755\"\u003e#19755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix false positive for \u003ccode\u003eC420\u003c/code\u003e with attribute, subscript, or slice assignment targets (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19513\"\u003e#19513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix handling of U+001C..U+001F whitespace (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Use lowercase hex characters to match the formatter (\u003ccode\u003ePLE2513\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19808\"\u003e#19808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003elint.future-annotations\u003c/code\u003e link (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19876\"\u003e#19876\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild \u003ccode\u003eriscv64\u003c/code\u003e binaries for release (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd rule code to error description in GitLab output (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19896\"\u003e#19896\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Gankra\"\u003e\u003ccode\u003e@​Gankra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PrettyWood\"\u003e\u003ccode\u003e@​PrettyWood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcreager\"\u003e\u003ccode\u003e@​dcreager\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/deliro\"\u003e\u003ccode\u003e@​deliro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ember91\"\u003e\u003ccode\u003e@​ember91\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ffgan\"\u003e\u003ccode\u003e@​ffgan\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/harupy\"\u003e\u003ccode\u003e@​harupy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nguu0123\"\u003e\u003ccode\u003e@​nguu0123\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prabhusneha\"\u003e\u003ccode\u003e@​prabhusneha\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.9\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Add check for \u003ccode\u003eairflow.secrets.cache.SecretCache\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/17707\"\u003e#17707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Offer a safe fix for multi-digit zeros (\u003ccode\u003eRUF064\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19847\"\u003e#19847\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19755\"\u003e#19755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix false positive for \u003ccode\u003eC420\u003c/code\u003e with attribute, subscript, or slice assignment targets (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19513\"\u003e#19513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix handling of U+001C..U+001F whitespace (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Use lowercase hex characters to match the formatter (\u003ccode\u003ePLE2513\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19808\"\u003e#19808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003elint.future-annotations\u003c/code\u003e link (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19876\"\u003e#19876\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild \u003ccode\u003eriscv64\u003c/code\u003e binaries for release (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd rule code to error description in GitLab output (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19896\"\u003e#19896\u003c/a\u003e)\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/astral-sh/ruff/commit/ef422460de726c5b896c09c364d02a4db24bcaf0\"\u003e\u003ccode\u003eef42246\u003c/code\u003e\u003c/a\u003e Bump 0.12.9 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19917\"\u003e#19917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/dc2e8ab3776a7f7ec9ec26be61939f73567a2c13\"\u003e\u003ccode\u003edc2e8ab\u003c/code\u003e\u003c/a\u003e [ty] support \u003ccode\u003ekw_only=True\u003c/code\u003e for \u003ccode\u003edataclass()\u003c/code\u003e and \u003ccode\u003efield()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9aaa82d037a12e38daebe518ab11c83414f2fe55\"\u003e\u003ccode\u003e9aaa82d\u003c/code\u003e\u003c/a\u003e Feature/build riscv64 bin (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3288ac2dfbfd3388b6ed99fe9776ea228eecca54\"\u003e\u003ccode\u003e3288ac2\u003c/code\u003e\u003c/a\u003e [ty] Add caching to \u003ccode\u003eCodeGeneratorKind::matches()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19912\"\u003e#19912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1167ed61cf3fa186e852df2d6ec9cb0136dffa80\"\u003e\u003ccode\u003e1167ed6\u003c/code\u003e\u003c/a\u003e [ty] Rename \u003ccode\u003efunctionArgumentNames\u003c/code\u003e to \u003ccode\u003ecallArgumentNames\u003c/code\u003e inlay hint setting...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2ee47d87b6908a6ba6f672bf48d6f42c17ee3dfe\"\u003e\u003ccode\u003e2ee47d8\u003c/code\u003e\u003c/a\u003e [ty] Default \u003ccode\u003ety.inlayHints.*\u003c/code\u003e server settings to true (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19910\"\u003e#19910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d324cedfc2d953f5ed435fc4ba0b1e2d504641c3\"\u003e\u003ccode\u003ed324ced\u003c/code\u003e\u003c/a\u003e [ty] Remove py-fuzzer skips for seeds that are no longer slow (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19906\"\u003e#19906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/5a570c8e6d227b1f4270987b124e853ccd7b2af3\"\u003e\u003ccode\u003e5a570c8\u003c/code\u003e\u003c/a\u003e [ty] fix deferred name loading in PEP695 generic classes/functions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19888\"\u003e#19888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/baadb5a78d7cddf0d876a841f308287a853e81e9\"\u003e\u003ccode\u003ebaadb5a\u003c/code\u003e\u003c/a\u003e [ty] Add some additional type safety to \u003ccode\u003eCycleDetector\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19903\"\u003e#19903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/df0648aae046f30bd1993323d93091bf4bde385c\"\u003e\u003ccode\u003edf0648a\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.12.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 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\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.0 (2024-10-29)\u003c/p\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-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/v4.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.10.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/415\"\u003e#415\u003c/a\u003e: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/420\"\u003e#420\u003c/a\u003e: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/417\"\u003e#417\u003c/a\u003e: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/410\"\u003e#410\u003c/a\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ca href=\"https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\"\u003eWhy you shouldn't invoke setup.py directly\u003c/a\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.12.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003e#390\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.11.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#415](https://github.com/pytest-dev/pytest-mock/issues/415) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/415\u0026gt;\u003c/code\u003e_: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#420](https://github.com/pytest-dev/pytest-mock/issues/420) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/420\u0026gt;\u003c/code\u003e_: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#417](https://github.com/pytest-dev/pytest-mock/issues/417) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/417\u0026gt;\u003c/code\u003e_: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#410](https://github.com/pytest-dev/pytest-mock/issues/410) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/410\u0026gt;\u003c/code\u003e\u003cem\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ccode\u003eWhy you shouldn't invoke setup.py directly \u0026lt;https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\u0026gt;\u003c/code\u003e\u003c/em\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.12.0 (2023-10-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ccode\u003e[#390](https://github.com/pytest-dev/pytest-mock/issues/390)\u003c/code\u003e_).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/390\"\u003e#390\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003epytest-dev/pytest-mock#390\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.1 (2023-06-15)\u003c/h2\u003e\n\u003cp\u003e(This release source code is identical to \u003ccode\u003e3.11.0\u003c/code\u003e except a small internal fix to deployment/CI)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ccode\u003e[#365](https://github.com/pytest-dev/pytest-mock/issues/365)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ccode\u003e[#364](https://github.com/pytest-dev/pytest-mock/issues/364)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/365\"\u003epytest-dev/pytest-mock#365\u003c/a\u003e\n.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/364\"\u003epytest-dev/pytest-mock#364\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.0 (2023-06-15)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ccode\u003e[#365](https://github.com/pytest-dev/pytest-mock/issues/365)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ccode\u003e[#364](https://github.com/pytest-dev/pytest-mock/issues/364)\u003c/code\u003e_).\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-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.10.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.3.1 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:/...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"},{"uuid":"2740084978","node_id":"PR_kwDOPcfoys6jUmDy","number":1,"state":"open","title":"Bump the development-dependencies group with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-12T17:58:46.000Z","updated_at":"2025-08-12T17:58:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development-dependencies","update_count":12,"packages":[{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"setuptools","old_version":"80.3.0","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"coverage","old_version":"7.8.0","new_version":"7.10.3","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"deepdiff","old_version":"8.4.2","new_version":"8.6.0","repository_url":"https://github.com/seperman/deepdiff"},{"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"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"mypy","old_version":"1.15.0","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.0.20250328","new_version":"2.32.4.20250809","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 12 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `80.3.0` | `80.9.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.8.0` | `7.10.3` |\n| [deepdiff](https://github.com/seperman/deepdiff) | `8.4.2` | `8.6.0` |\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| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.14.1` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.5.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.17.1` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250328` | `2.32.4.20250809` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.3.0` |\n\nUpdates `pre-commit` from 4.2.0 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.2.0...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.3.0 to 80.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev80.9.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet a deadline for the removal of pkg_resources later this year (December). (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved reliance on pkg_resources in test_wheel. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.8.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplaced more references to pkg_resources with importlib equivalents in wheel odule. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRestore explicit LICENSE file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5001\"\u003e#5001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved no longer used build dependency on \u003ccode\u003ecoherent.licensed\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly attempt to fetch eggs for unsatisfied requirements. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIn installer, when discovering egg dists, let metadata discovery search each egg. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved usage of pkg_resources from installer. Set an official deadline on the installer deprecation to 2025-10-31. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4997\"\u003e#4997\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4996\"\u003e#4996\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.6.0\u003c/h1\u003e\n\u003cp\u003eFeatures\u003c/p\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/pypa/setuptools/commit/9c4d383631d3951fcae0afd73b5d08ff5a262976\"\u003e\u003ccode\u003e9c4d383\u003c/code\u003e\u003c/a\u003e Bump version: 80.8.0 → 80.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/05cb3c84f1422f3b26ccfb00f4c43886dc55b9bc\"\u003e\u003ccode\u003e05cb3c8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5014\"\u003e#5014\u003c/a\u003e from pypa/debt/pkg_resources-deadline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3b0bf5bd43034c448a10e7102788fe710b4bb496\"\u003e\u003ccode\u003e3b0bf5b\u003c/code\u003e\u003c/a\u003e Adjust ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/9c28cdffd423f83e43dbfd39fc793c251da48585\"\u003e\u003ccode\u003e9c28cdf\u003c/code\u003e\u003c/a\u003e Set a deadline for the removal of pkg_resources later this year (December).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/a3bfef95193bf0ff78ef6e0fb8c63a3728f443b0\"\u003e\u003ccode\u003ea3bfef9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5013\"\u003e#5013\u003c/a\u003e from DimitriPapadopoulos/ISC\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/64bf9d0ce88a09748f702bd7736d9ec2879aa6ef\"\u003e\u003ccode\u003e64bf9d0\u003c/code\u003e\u003c/a\u003e Enforce ruff/flake8-implicit-str-concat rules (ISC)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3250c25197b299658cfd4d0db67770fc29b47277\"\u003e\u003ccode\u003e3250c25\u003c/code\u003e\u003c/a\u003e Fix broken link in docs (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4947\"\u003e#4947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5ccf50e01ab0d303f524c065f2cb51042b34bc55\"\u003e\u003ccode\u003e5ccf50e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5006\"\u003e#5006\u003c/a\u003e from pypa/feature/remove-more-pkg_resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/134e587c0ba0b59e1661f08a45e6d6d1ecd24329\"\u003e\u003ccode\u003e134e587\u003c/code\u003e\u003c/a\u003e Suppress nitpicky typecheck in pyright.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/0bf2663a19f2d947697997d125c3c880df2011b7\"\u003e\u003ccode\u003e0bf2663\u003c/code\u003e\u003c/a\u003e Add news fragment.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.3.0...v80.9.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.0 to 7.10.3\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.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\nstranded there and not combined into the totals, as described in \u003ccode\u003eissue 2025\u003c/code\u003e_.  This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Windows (or maybe only some Windows?) the patch would fail with a\n\u003ccode\u003eModuleNotFound\u003c/code\u003e error trying to import coverage.  This is now fixed,\nclosing \u003ccode\u003eissue 2022\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOriginally only options set in the coverage configuration file would apply\nto subprocesses.  Options set on the \u003ccode\u003ecoverage run\u003c/code\u003e command line (such as\n\u003ccode\u003e--branch\u003c/code\u003e) wouldn't be communicated to the subprocesses.  This could\nlead to combining failures, as described in \u003ccode\u003eissue 2021\u003c/code\u003e_. Now the entire\nconfiguration is used in subprocesses, regardless of its origin.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003edebug=patch\u003c/code\u003e to help diagnose problems.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: really close all SQLite databases, even in-memory ones. Closes \u003ccode\u003eissue 2017\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2017: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2017\"\u003enedbat/coveragepy#2017\u003c/a\u003e\n.. _issue 2021: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2021\"\u003enedbat/coveragepy#2021\u003c/a\u003e\n.. _issue 2022: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2022\"\u003enedbat/coveragepy#2022\u003c/a\u003e\n.. _issue 2024: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2024\"\u003enedbat/coveragepy#2024\u003c/a\u003e\n.. _issue 2025: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2025\"\u003enedbat/coveragepy#2025\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-2:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.2 — 2025-08-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: some code with NOP bytecodes could report missing branches that are\nactually executed. This is now fixed, closing \u003ccode\u003eissue 1999\u003c/code\u003e_. Python 3.9\nstill shows the problem.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1999: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1999\"\u003enedbat/coveragepy#1999\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-1:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.1 — 2025-07-27\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/nedbat/coveragepy/commit/0691ce5d08ae2eb6cae51f879ffe609aeb14d221\"\u003e\u003ccode\u003e0691ce5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/34c9aca951d2c89ab0af5343a9a1c5cc7b00aefd\"\u003e\u003ccode\u003e34c9aca\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/fd83f218e21058f43c7544a3cb01ce84714965f7\"\u003e\u003ccode\u003efd83f21\u003c/code\u003e\u003c/a\u003e style: lists for homogenous collections\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/d9618002dde634898613f5935092cefbb29035f0\"\u003e\u003ccode\u003ed961800\u003c/code\u003e\u003c/a\u003e docs: remove an unused reference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/697d4bb3950b31dc7f5d39d9dcf67fabde9db241\"\u003e\u003ccode\u003e697d4bb\u003c/code\u003e\u003c/a\u003e fix: subprocesses inherit the entire configuration. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2021\"\u003e#2021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/b6db3b7e52e4820bd1d3e43b29f700a5f31f3937\"\u003e\u003ccode\u003eb6db3b7\u003c/code\u003e\u003c/a\u003e build: show the total during local metacov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/cfbceb584b18f87fdc6228fc4a8202d789e030cc\"\u003e\u003ccode\u003ecfbceb5\u003c/code\u003e\u003c/a\u003e docs: reverted \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2018\"\u003e#2018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/264bbd3d2c2ee9eca32248c5874423c0b6ff6287\"\u003e\u003ccode\u003e264bbd3\u003c/code\u003e\u003c/a\u003e refactor: more patch logging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3ecdfafc74bd2b007b561e6ac6b080c04e598b06\"\u003e\u003ccode\u003e3ecdfaf\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group with 2 updates (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2026\"\u003e#2026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/41a225698710c9005da822978930be69312d1676\"\u003e\u003ccode\u003e41a2256\u003c/code\u003e\u003c/a\u003e fix: revert \u0026quot;thread safe resume (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2018\"\u003e#2018\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2027\"\u003e#2027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.8.0...7.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.4.2 to 8.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/seperman/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdating deprecated pydantic calls\u003c/li\u003e\n\u003cli\u003eSwitching to pyproject.toml\u003c/li\u003e\n\u003cli\u003eFix for moving nested tables when using iterable_compare_func.  by\u003c/li\u003e\n\u003cli\u003eFix recursion depth limit when hashing numpy.datetime64\u003c/li\u003e\n\u003cli\u003eMoving from legacy setuptools use to pyproject.toml\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\u003eSee full diff in \u003ca href=\"https://github.com/seperman/deepdiff/commits\"\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\nUpdates `pytest-mock` from 3.14.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\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/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\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-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-xdist` from 3.6.1 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst\"\u003epytest-xdist's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003epytest-xdist 3.8.0 (2025-06-30)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1083](https://github.com/pytest-dev/pytest-xdist/issues/1083) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1083\u0026gt;\u003c/code\u003e_: Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e option to control whether to automatically reorder tests in loadscope for tests where relative ordering matters. This only applies when using \u003ccode\u003eloadscope\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, [test_file_1, test_file_2, ..., test_file_n] are given as input test files, if \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e is used, for either worker, the \u003ccode\u003etest_file_a\u003c/code\u003e will be executed before \u003ccode\u003etest_file_b\u003c/code\u003e only if \u003ccode\u003ea \u0026lt; b\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default behavior is to reorder the tests to maximize the number of tests that can be executed in parallel.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003epytest-xdist 3.7.0 (2025-05-26)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1142](https://github.com/pytest-dev/pytest-xdist/issues/1142) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1142\u0026gt;\u003c/code\u003e_: Added support for Python 3.13.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1144](https://github.com/pytest-dev/pytest-xdist/issues/1144) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1144\u0026gt;\u003c/code\u003e_: The internal \u003ccode\u003esteal\u003c/code\u003e command is now atomic - it unschedules either all requested tests or none.\u003c/p\u003e\n\u003cp\u003eThis is a prerequisite for group/scope support in the \u003ccode\u003eworksteal\u003c/code\u003e scheduler, so test groups won't be broken up incorrectly.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1170](https://github.com/pytest-dev/pytest-xdist/issues/1170) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1170\u0026gt;\u003c/code\u003e_: Add the \u003ccode\u003e--px\u003c/code\u003e arg to create proxy gateways.\u003c/p\u003e\n\u003cp\u003eProxy gateways are passed to additional gateways using the \u003ccode\u003evia\u003c/code\u003e keyword.\nThey can serve as a way to run multiple workers on remote machines.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1200](https://github.com/pytest-dev/pytest-xdist/issues/1200) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1200\u0026gt;\u003c/code\u003e_: Now multiple \u003ccode\u003exdist_group\u003c/code\u003e markers are considered when assigning tests to groups (order does not matter).\u003c/p\u003e\n\u003cp\u003ePreviously, only the last marker would assign a test to a group, but now if a test has multiple \u003ccode\u003exdist_group\u003c/code\u003e marks applied (for example via parametrization or via fixtures), they are merged to make a new group.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemovals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#1162](https://github.com/pytest-dev/pytest-xdist/issues/1162) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1162\u0026gt;\u003c/code\u003e_: Dropped support for EOL Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTrivial Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1092](https://github.com/pytest-dev/pytest-xdist/issues/1092) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1092\u0026gt;\u003c/code\u003e_: Update an error message to better indicate where users should go for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1190](https://github.com/pytest-dev/pytest-xdist/issues/1190) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1190\u0026gt;\u003c/code\u003e_: Switched to using a SPDX license identifier introduced in PEP 639.\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-xdist/commit/1e3e4dc16523c8a8f6c67d95a950166420718c99\"\u003e\u003ccode\u003e1e3e4dc\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/600aad575a4e4382855145b0c464d51b8f0b7242\"\u003e\u003ccode\u003e600aad5\u003c/code\u003e\u003c/a\u003e Ensure all xdist group names are strings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/9d7ba5b5fbbbe26793fbfb7cb1903eb69425cf09\"\u003e\u003ccode\u003e9d7ba5b\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1217\"\u003e#1217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/532f07fb181bb1546eda79bbe6b46bdb56c699e1\"\u003e\u003ccode\u003e532f07f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1210\"\u003e#1210\u003c/a\u003e from pytest-dev/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/0883ad085e0cf039c8ae13eb2789c1076544d225\"\u003e\u003ccode\u003e0883ad0\u003c/code\u003e\u003c/a\u003e Fix Path usage in \u003ccode\u003etest_rsync_roots_no_roots\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/58a51bc14015d211761e44c2bdacab09c3893668\"\u003e\u003ccode\u003e58a51bc\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/59a2ad0150697b9ff837f3ae8dcf6e074d5a114b\"\u003e\u003ccode\u003e59a2ad0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1220\"\u003e#1220\u003c/a\u003e from pytest-dev/dependabot/github_actions/github-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/d42b9c72044855236c68286ca3bdb34486a05872\"\u003e\u003ccode\u003ed42b9c7\u003c/code\u003e\u003c/a\u003e build(deps): bump hynek/build-and-inspect-python-package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/ebfcb99072aed3503fda5175245f28895a0204bb\"\u003e\u003ccode\u003eebfcb99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1206\"\u003e#1206\u003c/a\u003e from pytest-dev/release-3.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/23b7fd6054298a530b02b33d07007b3082a36277\"\u003e\u003ccode\u003e23b7fd6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1207\"\u003e#1207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.15.0 to 1.17.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.17.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19485\"\u003e19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19428\"\u003e19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent a crash when InitVar is redefined with a method in a subclass (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19453\"\u003e19453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlexey Makridenko\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChad Dombrova\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eCharulata\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDonal Burns\u003c/li\u003e\n\u003cli\u003eGuy Wilson\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003ejohnthagen\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eŁukasz Kwieciński\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003eMikhail Golubev\u003c/li\u003e\n\u003cli\u003eSebastian Rittau\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.16\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.16 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eDifferent Property Getter and Setter Types\u003c/h3\u003e\n\u003cp\u003eMypy now supports using different types for a property getter and setter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eclass A:\n    _value: int\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/python/mypy/commit/acb29831e286bbccde37c03bc75381f40a5fdc9e\"\u003e\u003ccode\u003eacb2983\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/933c913fbe6d2fbf277ff8d6b2f2298f0f84be64\"\u003e\u003ccode\u003e933c913\u003c/code\u003e\u003c/a\u003e Retain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19485\"\u003e#19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/5f4428f0286df58169d2f34f4f86561ad617538b\"\u003e\u003ccode\u003e5f4428f\u003c/code\u003e\u003c/a\u003e Fix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19428\"\u003e#19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/88fdeaae0abc92d605fc475fd153b4ad5b239310\"\u003e\u003ccode\u003e88fdeaa\u003c/code\u003e\u003c/a\u003e Prevent a crash when InitVar is redefined with a method in a subclass (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19453\"\u003e#19453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e44d14f8e52a8890d08726ee753c8754edefd649\"\u003e\u003ccode\u003ee44d14f\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1+dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0260991f6b055110c3df36bd5539d4f4489bf153\"\u003e\u003ccode\u003e0260991\u003c/code\u003e\u003c/a\u003e Update version string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3901aa2f9523ce55e08d94c1716028d840398753\"\u003e\u003ccode\u003e3901aa2\u003c/code\u003e\u003c/a\u003e Updates to 1.17 changelog (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19436\"\u003e#19436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7d133961a7e759aab84223bf8038b9489daaa93c\"\u003e\u003ccode\u003e7d13396\u003c/code\u003e\u003c/a\u003e Initial changelog for 1.17 release (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19427\"\u003e#19427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a182dec997b418b925fe0c28575c50debba0bb3a\"\u003e\u003ccode\u003ea182dec\u003c/code\u003e\u003c/a\u003e Combine the revealed types of multiple iteration steps in a more robust manne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ab4fd57d45b7f81cf281b17b7d3697ac9f79bc15\"\u003e\u003ccode\u003eab4fd57\u003c/code\u003e\u003c/a\u003e Improve the handling of \u0026quot;iteration dependent\u0026quot; errors and notes in finally cla...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.15.0...v1.17.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.0.20250328 to 2.32.4.20250809\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.0\"\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/autocode07/python-poetry__poetry.fee7d0d2/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/autocode07%2Fpython-poetry__poetry.fee7d0d2/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"}],"issue_packages":[{"old_version":"0.1.8","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-05-02T01:20:24.000Z","version_change":"0.1.8 → 0.4.0","issue":{"uuid":"4367420846","node_id":"PR_kwDOSBU7U87XkcQO","number":8,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 10 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-05-02T01:20:24.000Z","updated_at":"2026-05-02T01:20:24.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":10,"packages":[{"name":"pre-commit","old_version":"4.5.1","new_version":"4.6.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.5","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"deepdiff","old_version":"8.6.1","new_version":"9.0.0","repository_url":"https://github.com/qlustered/deepdiff"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"pytest","old_version":"9.0.2","new_version":"9.0.3","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-randomly","old_version":"4.0.1","new_version":"4.1.0","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.2","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.4.20260107","new_version":"2.33.0.20260408","repository_url":"https://github.com/python/typeshed"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 10 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.5.1` | `4.6.0` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.5` |\n| [deepdiff](https://github.com/qlustered/deepdiff) | `8.6.1` | `9.0.0` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `9.0.2` | `9.0.3` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `7.0.0` | `7.1.0` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `4.0.1` | `4.1.0` |\n| [mypy](https://github.com/python/mypy) | `1.19.1` | `1.20.2` |\n| [types-requests](https://github.com/python/typeshed) | `2.32.4.20260107` | `2.33.0.20260408` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.4.0` |\n\n\nUpdates `pre-commit` from 4.5.1 to 4.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.6.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: allow \u003ccode\u003e--hook-dir\u003c/code\u003e to be missing to enable easier usage with \u003ccode\u003egit\u003c/code\u003e 2.54+ git hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: \u003ccode\u003e--hook-type\u003c/code\u003e is required.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.6.0 - 2026-04-21\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: allow \u003ccode\u003e--hook-dir\u003c/code\u003e to be missing to enable easier\nusage with \u003ccode\u003egit\u003c/code\u003e 2.54+ git hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003epre-commit hook-impl\u003c/code\u003e: \u003ccode\u003e--hook-type\u003c/code\u003e is required.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/f35134b05028ec938ac605ae500fdf95462655d3\"\u003e\u003ccode\u003ef35134b\u003c/code\u003e\u003c/a\u003e v4.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a51ffcb81f6c8ed2e6467913c3343a8800f3ab9\"\u003e\u003ccode\u003e2a51ffc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3662\"\u003e#3662\u003c/a\u003e from pre-commit/hook-impl-optional-hook-dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/d7dee322abfc765b042f2e3b872aab3c3a867610\"\u003e\u003ccode\u003ed7dee32\u003c/code\u003e\u003c/a\u003e make --hook-dir optional for hook-impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/965aeb1c680e8b526342153547f0ec014484c63d\"\u003e\u003ccode\u003e965aeb1\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3661\"\u003e#3661\u003c/a\u003e from pre-commit/hook-impl-required\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2eacc064aa9b5bb33d3a0d84a234b475e34f3096\"\u003e\u003ccode\u003e2eacc06\u003c/code\u003e\u003c/a\u003e --hook-type is required for hook-impl\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f5678bf4ac35cffc0ff7174ad85f7fdc2a5c977e\"\u003e\u003ccode\u003ef5678bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3657\"\u003e#3657\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/054cc5bd6bb1b20faa1eefe09f0de3b68fceee94\"\u003e\u003ccode\u003e054cc5b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/5c0f3024d2524f6e029a4c333392fd9be9fb27f6\"\u003e\u003ccode\u003e5c0f302\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3652\"\u003e#3652\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5d91142676630f8130020b35e166e0c0e92b8f4\"\u003e\u003ccode\u003ea5d9114\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/129a1f5ca1eaee0c952a5e7a07faae305c5e15bc\"\u003e\u003ccode\u003e129a1f5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3641\"\u003e#3641\u003c/a\u003e from pre-commit/mxr-patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.5.1...v4.6.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.13.1 to 7.13.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst\"\u003ecoverage's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 7.13.5 — 2026-03-17\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003eissue 2138\u003c/code\u003e_ describes a memory leak that happened when repeatedly\nusing the Coverage API with in-memory data. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the markdown-formatted coverage report didn't fully escape special\ncharacters in file paths (\u003ccode\u003eissue 2141\u003c/code\u003e\u003cem\u003e). This would be very unlikely to\ncause a problem, but now it's done properly, thanks to \u003ccode\u003eEllie Ayla \u0026lt;pull 2142_\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the C extension wouldn't build on VS2019, but now it does (\u003ccode\u003eissue 2145\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2138: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2138\"\u003ecoveragepy/coveragepy#2138\u003c/a\u003e\n.. _issue 2141: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2141\"\u003ecoveragepy/coveragepy#2141\u003c/a\u003e\n.. _pull 2142: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2142\"\u003ecoveragepy/coveragepy#2142\u003c/a\u003e\n.. _issue 2145: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2145\"\u003ecoveragepy/coveragepy#2145\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.4 — 2026-02-09\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the third-party code fix in 7.13.3 required examining the parent\ndirectories where coverage was run. In the unusual situation that one of the\nparent directories is unreadable, a PermissionError would occur, as\ndescribed in \u003ccode\u003eissue 2129\u003c/code\u003e_. This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: in test suites that change sys.path, coverage.py could fail with\n\u0026quot;RuntimeError: Set changed size during iteration\u0026quot; as described and fixed in\n\u003ccode\u003epull 2130\u003c/code\u003e_. Thanks, Noah Fatsi.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eWe now publish ppc64le wheels, thanks to \u003ccode\u003ePankhudi Jain \u0026lt;pull 2121_\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2121: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2121\"\u003ecoveragepy/coveragepy#2121\u003c/a\u003e\n.. _issue 2129: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2129\"\u003ecoveragepy/coveragepy#2129\u003c/a\u003e\n.. _pull 2130: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/pull/2130\"\u003ecoveragepy/coveragepy#2130\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.3 — 2026-02-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: in some situations, third-party code was measured when it shouldn't have\nbeen, slowing down test execution. This happened with layered virtual\nenvironments such as uv sometimes makes. The problem is fixed, closing \u003ccode\u003eissue 2082\u003c/code\u003e_. Now any directory on sys.path that is inside a virtualenv is\nconsidered third-party code.\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/coveragepy/coveragepy/commit/c88da144eef8cf78424331e5cbbde3e002eef43f\"\u003e\u003ccode\u003ec88da14\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e2ac3e1ef644370101ff365acad3431d16076512\"\u003e\u003ccode\u003ee2ac3e1\u003c/code\u003e\u003c/a\u003e build: sample HTML shouldn't include the status.json file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/910f8f336541c2dcb4e9ec468144c7eb4a7779ac\"\u003e\u003ccode\u003e910f8f3\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/3a4819c24d3d20cb2670b99141517812ffa3fab0\"\u003e\u003ccode\u003e3a4819c\u003c/code\u003e\u003c/a\u003e style: make workflows more uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2a53705f5fe588158b8a8d37ff3beee86388b9e4\"\u003e\u003ccode\u003e2a53705\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 4 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e7c878d201db819416b978150944d9a842d22b18\"\u003e\u003ccode\u003ee7c878d\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/ab4db406a9c35acf977cf3ddb94a78d696b77bc5\"\u003e\u003ccode\u003eab4db40\u003c/code\u003e\u003c/a\u003e build: use --generate-hashes when pinning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/a438753eef870441044cef588e29ce4b9a28adf1\"\u003e\u003ccode\u003ea438753\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/7b33457d2c6367dfd5a563239998b3980444e090\"\u003e\u003ccode\u003e7b33457\u003c/code\u003e\u003c/a\u003e refactor: some leftover pyupgrade 3.10 bits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/2ff968db91a7cdafe6f6569ac7659a3a93a2da07\"\u003e\u003ccode\u003e2ff968d\u003c/code\u003e\u003c/a\u003e refactor: this type wasn't used anywhere\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.13.1...7.13.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.6.1 to 9.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/qlustered/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e9.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003emigration note:\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eto_dict()\u003c/code\u003e and \u003ccode\u003eto_json()\u003c/code\u003e now accept a \u003ccode\u003everbose_level\u003c/code\u003e parameter and always return a usable text-view dict. When the original view is \u003ccode\u003e'tree'\u003c/code\u003e, they default to \u003ccode\u003everbose_level=2\u003c/code\u003e for full detail. The old \u003ccode\u003eview_override\u003c/code\u003e parameter is removed. To get the previous results, you will need to pass the explicit verbose_level to \u003ccode\u003eto_json\u003c/code\u003e and \u003ccode\u003eto_dict\u003c/code\u003e if you are using the tree view.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eDropping support for Python 3.9\u003c/li\u003e\n\u003cli\u003eSupport for python 3.14\u003c/li\u003e\n\u003cli\u003eAdded support for callable \u003ccode\u003egroup_by\u003c/code\u003e thanks to \u003ca href=\"https://github.com/echan5\"\u003eechan5\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003eFlatDeltaDict\u003c/code\u003e TypedDict for \u003ccode\u003eto_flat_dicts\u003c/code\u003e return type\u003c/li\u003e\n\u003cli\u003eFixed colored view display when all list items are removed thanks to \u003ca href=\"https://github.com/yannrouillard\"\u003eyannrouillard\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ehasattr()\u003c/code\u003e swallowing \u003ccode\u003eAttributeError\u003c/code\u003e in \u003ccode\u003e__slots__\u003c/code\u003e handling for objects with \u003ccode\u003e__getattr__\u003c/code\u003e thanks to \u003ca href=\"https://github.com/tpvasconcelos\"\u003etpvasconcelos\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eignore_order=True\u003c/code\u003e missing int-vs-float type changes\u003c/li\u003e\n\u003cli\u003eAlways use t1 path for reporting thanks to \u003ca href=\"https://github.com/devin13cox\"\u003edevin13cox\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003e_convert_oversized_ints\u003c/code\u003e failing on NamedTuples\u003c/li\u003e\n\u003cli\u003eFixed orjson \u003ccode\u003eTypeError\u003c/code\u003e for integers exceeding 64-bit range\u003c/li\u003e\n\u003cli\u003eFixed parameter bug in \u003ccode\u003eto_flat_dicts\u003c/code\u003e where \u003ccode\u003einclude_action_in_path\u003c/code\u003e and \u003ccode\u003ereport_type_changes\u003c/code\u003e were not being passed through\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eignore_keys\u003c/code\u003e issue in \u003ccode\u003edetailed__dict__\u003c/code\u003e thanks to \u003ca href=\"https://github.com/vitalis89\"\u003evitalis89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed logarithmic similarity type hint thanks to \u003ca href=\"https://github.com/ljames8\"\u003eljames8\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e8.6.2 - Fix (CVE-2025-58367)\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/qlustered/deepdiff/commit/41c726586cfef55de0c8474923d2734f1529d223\"\u003e\u003ccode\u003e41c7265\u003c/code\u003e\u003c/a\u003e fixing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/563c51e245c14f154d517b00c50ee8d056dcf636\"\u003e\u003ccode\u003e563c51e\u003c/code\u003e\u003c/a\u003e Merge branch 'master' of github.com:seperman/deepdiff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/172dc5cc218cb1cc970145ad241f7e94c335eb47\"\u003e\u003ccode\u003e172dc5c\u003c/code\u003e\u003c/a\u003e updating docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/81c4c9efe7378f53453b3c9546e552d5dfb57552\"\u003e\u003ccode\u003e81c4c9e\u003c/code\u003e\u003c/a\u003e updating docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/2155042a7a596a8d78f6c5ef9f20d2e7d795ce43\"\u003e\u003ccode\u003e2155042\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/qlustered/deepdiff/issues/579\"\u003e#579\u003c/a\u003e from qlustered/dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/dc70684983806f2d9085051c9285851f54246703\"\u003e\u003ccode\u003edc70684\u003c/code\u003e\u003c/a\u003e 9.0.0 version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/8ff51de8189fd374f5316900586fa181fac3a92f\"\u003e\u003ccode\u003e8ff51de\u003c/code\u003e\u003c/a\u003e 9.0.0 version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/123a4af982b7020c9b3c9f1ff2ed97f72db0bd5e\"\u003e\u003ccode\u003e123a4af\u003c/code\u003e\u003c/a\u003e no more auto commit on version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/913841871a97565a1ce9664671cd3af1035bd76f\"\u003e\u003ccode\u003e9138418\u003c/code\u003e\u003c/a\u003e including docs in wheel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/qlustered/deepdiff/commit/eac936518f2925c62185c0cdb29dd3faf5e9c9b7\"\u003e\u003ccode\u003eeac9365\u003c/code\u003e\u003c/a\u003e updating changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/qlustered/deepdiff/compare/8.6.1...9.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `responses` from 0.25.8 to 0.26.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/getsentry/responses/releases\"\u003eresponses's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\u003c/li\u003e\n\u003c/ul\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/getsentry/responses/blob/master/CHANGES\"\u003eresponses's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.26.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eWhen using \u003ccode\u003eassert_all_requests_are_fired=True\u003c/code\u003e, assertions about\nunfired requests are now raised even when an exception occurs in the context manager or\ndecorated function. Previously, these assertions were suppressed when exceptions occurred.\nThis new behavior provides valuable debugging context about which mocked requests were\nor weren't called.\u003c/li\u003e\n\u003cli\u003eConsider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries\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/getsentry/responses/commit/94913d0580377591350e69732df72f946d77b8c5\"\u003e\u003ccode\u003e94913d0\u003c/code\u003e\u003c/a\u003e release: 0.26.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/051b79e7fc9f5209fd351ee20288640a8fcd2265\"\u003e\u003ccode\u003e051b79e\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003eassert_all_requests_are_fired\u003c/code\u003e always assert on exception (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/782\"\u003e#782\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/0905cb8bd56b78f4d735d6db28ee4f12386ba4e8\"\u003e\u003ccode\u003e0905cb8\u003c/code\u003e\u003c/a\u003e Fix query_param_matcher not matching empty query parameter values (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/787\"\u003e#787\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/e0c6faab419f902d6b646a902b7049196d64f68c\"\u003e\u003ccode\u003ee0c6faa\u003c/code\u003e\u003c/a\u003e ci(release): Switch from action-prepare-release to Craft (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/785\"\u003e#785\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/1be3a737b70a34d7f6a68a6f385c88af1f3e2df8\"\u003e\u003ccode\u003e1be3a73\u003c/code\u003e\u003c/a\u003e fix: Consider the \u003ccode\u003eRetry-After\u003c/code\u003e header when handling retries (\u003ca href=\"https://redirect.github.com/getsentry/responses/issues/784\"\u003e#784\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/getsentry/responses/commit/c6730fbc87bf397c7fc798ec7573e6089ba877b6\"\u003e\u003ccode\u003ec6730fb\u003c/code\u003e\u003c/a\u003e Merge branch 'release/0.25.8'\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/getsentry/responses/compare/0.25.8...0.26.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 9.0.2 to 9.0.3\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\u003e9.0.3\u003c/h2\u003e\n\u003ch1\u003epytest 9.0.3 (2026-04-07)\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/12444\"\u003e#12444\u003c/a\u003e: Fixed \u003ccode\u003epytest.approx\u003c/code\u003e which now correctly takes into account \u003ccode\u003e~collections.abc.Mapping\u003c/code\u003e keys order to compare them.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13634\"\u003e#13634\u003c/a\u003e: Blocking a \u003ccode\u003econftest.py\u003c/code\u003e file using the \u003ccode\u003e-p no:\u003c/code\u003e option is now explicitly disallowed.\u003c/p\u003e\n\u003cp\u003ePreviously this resulted in an internal assertion failure during plugin loading.\u003c/p\u003e\n\u003cp\u003ePytest now raises a clear \u003ccode\u003eUsageError\u003c/code\u003e explaining that conftest files are not plugins and cannot be disabled via \u003ccode\u003e-p\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/13734\"\u003e#13734\u003c/a\u003e: Fixed crash when a test raises an exceptiongroup with \u003ccode\u003e__tracebackhide__ = 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/14195\"\u003e#14195\u003c/a\u003e: Fixed an issue where non-string messages passed to \u003c!-- raw HTML omitted --\u003eunittest.TestCase.subTest()\u003c!-- raw HTML omitted --\u003e were not printed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e: Fixed use of insecure temporary directory (CVE-2025-71176).\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/13388\"\u003e#13388\u003c/a\u003e: Clarified documentation for \u003ccode\u003e-p\u003c/code\u003e vs \u003ccode\u003ePYTEST_PLUGINS\u003c/code\u003e plugin loading and fixed an incorrect \u003ccode\u003e-p\u003c/code\u003e example.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13731\"\u003e#13731\u003c/a\u003e: Clarified that capture fixtures (e.g. \u003ccode\u003ecapsys\u003c/code\u003e and \u003ccode\u003ecapfd\u003c/code\u003e) take precedence over the \u003ccode\u003e-s\u003c/code\u003e / \u003ccode\u003e--capture=no\u003c/code\u003e command-line options in \u003ccode\u003eAccessing captured output from a test function \u0026lt;accessing-captured-output\u0026gt;\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14088\"\u003e#14088\u003c/a\u003e: Clarified that the default \u003ccode\u003epytest_collection\u003c/code\u003e hook sets \u003ccode\u003esession.items\u003c/code\u003e before it calls \u003ccode\u003epytest_collection_finish\u003c/code\u003e, not after.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14255\"\u003e#14255\u003c/a\u003e: TOML integer log levels must be quoted: Updating reference documentation.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12689\"\u003e#12689\u003c/a\u003e: The test reports are now published to Codecov from GitHub Actions.\nThe test statistics is visible \u003ca href=\"https://app.codecov.io/gh/pytest-dev/pytest/tests\"\u003eon the web interface\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003e-- by \u003ccode\u003ealeguy02\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/pytest-dev/pytest/commit/a7d58d7a21b78581e636bbbdea13c66ad1657c1e\"\u003e\u003ccode\u003ea7d58d7\u003c/code\u003e\u003c/a\u003e Prepare release version 9.0.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/089d98199c253d8f89a040243bc4f2aa6cd5ab22\"\u003e\u003ccode\u003e089d981\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14366\"\u003e#14366\u003c/a\u003e from bluetech/revert-14193-backport\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/8127eaf4ab7f6b2fdd0dc1b38343ec97aeef05ac\"\u003e\u003ccode\u003e8127eaf\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Fix: assertrepr_compare respects dict insertion order (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14050\"\u003e#14050\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14193\"\u003e#14193\u003c/a\u003e)\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/99a7e6029e7a6e8d53e5df114b1346e035370241\"\u003e\u003ccode\u003e99a7e60\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14363\"\u003e#14363\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/95d8423bd...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ddee02a578da30dd43aedc39c1c1f1aaadfcee95\"\u003e\u003ccode\u003eddee02a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14343\"\u003e#14343\u003c/a\u003e from bluetech/cve-2025-71176-simple\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/74eac6916fee34726cb194f16c516e96fbd29619\"\u003e\u003ccode\u003e74eac69\u003c/code\u003e\u003c/a\u003e doc: Update training info (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14298\"\u003e#14298\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14301\"\u003e#14301\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f92dee777cfdb77d1c43633d02766ddf1f07c869\"\u003e\u003ccode\u003ef92dee7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14267\"\u003e#14267\u003c/a\u003e from pytest-dev/patchback/backports/9.0.x/d6fa26c62...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7ee58acc8777c31ac6cf388d01addf5a414a7439\"\u003e\u003ccode\u003e7ee58ac\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12378\"\u003e#12378\u003c/a\u003e from Pierre-Sassoulas/fix-implicit-str-concat-and-d...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/37da870d37e3a2f5177cae075c7b9ae279432bf8\"\u003e\u003ccode\u003e37da870\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14259\"\u003e#14259\u003c/a\u003e from mitre88/patch-4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14268\"\u003e#14268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c34bfa3b7acb65b594707c714f1d8461b0304eed\"\u003e\u003ccode\u003ec34bfa3\u003c/code\u003e\u003c/a\u003e Add explanation for string context diffs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14257\"\u003e#14257\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/14266\"\u003e#14266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/9.0.2...9.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 7.0.0 to 7.1.0\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\u003e7.1.0 (2026-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed total coverage computation to always be consistent, regardless of reporting settings.\nPreviously some reports could produce different total counts, and consequently can make --cov-fail-under behave different depending on\nreporting options.\nSee \u003ccode\u003e[#641](https://github.com/pytest-dev/pytest-cov/issues/641) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/641\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImprove handling of ResourceWarning from sqlite3.\u003c/p\u003e\n\u003cp\u003eThe plugin adds warning filter for sqlite3 \u003ccode\u003eResourceWarning\u003c/code\u003e unclosed database (since 6.2.0).\nIt checks if there is already existing plugin for this message by comparing filter regular expression.\nWhen filter is specified on command line the message is escaped and does not match an expected message.\nA check for an escaped regular expression is added to handle this case.\u003c/p\u003e\n\u003cp\u003eWith this fix one can suppress \u003ccode\u003eResourceWarning\u003c/code\u003e from sqlite3 from command line::\u003c/p\u003e\n\u003cp\u003epytest -W \u0026quot;ignore:unclosed database in \u0026lt;sqlite3.Connection object at:ResourceWarning\u0026quot; ...\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious improvements to documentation.\nContributed by Art Pelling in \u003ccode\u003e[#718](https://github.com/pytest-dev/pytest-cov/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/718\u0026gt;\u003c/code\u003e_ and\n\u0026quot;vivodi\u0026quot; in \u003ccode\u003e[#738](https://github.com/pytest-dev/pytest-cov/issues/738) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/738\u0026gt;\u003c/code\u003e\u003cem\u003e.\nAlso closed \u003ccode\u003e[#736](https://github.com/pytest-dev/pytest-cov/issues/736) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/736\u0026gt;\u003c/code\u003e\u003c/em\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed some assertions in tests.\nContributed by in Markéta Machová in \u003ccode\u003e[#722](https://github.com/pytest-dev/pytest-cov/issues/722) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/722\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved unnecessary coverage configuration copying (meant as a backup because reporting commands had configuration side-effects before coverage 5.0).\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/66c8a526b1246b5eb8fb1bc218878131bc628622\"\u003e\u003ccode\u003e66c8a52\u003c/code\u003e\u003c/a\u003e Bump version: 7.0.0 → 7.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f7076624784332594aa4cb3585d4757d295db15e\"\u003e\u003ccode\u003ef707662\u003c/code\u003e\u003c/a\u003e Make the examples use pypy 3.11.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6049a7847872e3139e6c82e93787123df5dc8672\"\u003e\u003ccode\u003e6049a78\u003c/code\u003e\u003c/a\u003e Make context test use the old ctracer (seems the new sysmon tracer behaves di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/8ebf20bbbc73478b3f8fd36d30237d9ea083f06b\"\u003e\u003ccode\u003e8ebf20b\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/861d30e60d571f97259c6b718b71c819d5dbc3b9\"\u003e\u003ccode\u003e861d30e\u003c/code\u003e\u003c/a\u003e Remove the backup context manager  - shouldn't be needed since coverage 5.0, ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/fd4c956014035527f0c3c8d7faef3f8cfdadac7f\"\u003e\u003ccode\u003efd4c956\u003c/code\u003e\u003c/a\u003e Pass the precision on the nulled total (seems that there's some caching goion...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/78c9c4ecb005faf4962fd86ff7bf9c9cce9554d6\"\u003e\u003ccode\u003e78c9c4e\u003c/code\u003e\u003c/a\u003e Only run the 3.9 on older deps.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4849a922e8be725c662a3d9175da571ace6545dc\"\u003e\u003ccode\u003e4849a92\u003c/code\u003e\u003c/a\u003e Punctuation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/197c35e2f37031fd1927715307ab6eed7cb3d2b7\"\u003e\u003ccode\u003e197c35e\u003c/code\u003e\u003c/a\u003e Update changelog and hopefully I don't forget to publish release again :))\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/14dc1c92d44108384e39803888635fdbfc578b7f\"\u003e\u003ccode\u003e14dc1c9\u003c/code\u003e\u003c/a\u003e Update examples to use 3.11 and make the adhoc layout example look a bit more...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v7.0.0...v7.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-randomly` from 4.0.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/blob/main/CHANGELOG.rst\"\u003epytest-randomly's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.1.0 (2026-04-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix a crash with Faker installed when explicitly enabling and disabling the plugin (via \u003ccode\u003e-p randomly -p no:randomly\u003c/code\u003e).\u003c/p\u003e\n\u003cp\u003eThanks to mojosan77 for the report in \u003ccode\u003eIssue [#718](https://github.com/pytest-dev/pytest-randomly/issues/718) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/718\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDrop Python 3.9 support.\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-randomly/commit/c412c8d6d328224a6a0cb9e4324438c62b46f4f5\"\u003e\u003ccode\u003ec412c8d\u003c/code\u003e\u003c/a\u003e Version 4.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/657d9c356d1970bbe664b36446d4f8a9461e4988\"\u003e\u003ccode\u003e657d9c3\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/722\"\u003e#722\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/49c8c1bb487d03ca1bda2ac7567e4205bf82aae6\"\u003e\u003ccode\u003e49c8c1b\u003c/code\u003e\u003c/a\u003e Fix a crash with Faker installed and plugin disabled (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/721\"\u003e#721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/c9181c28607e990123ee480200ae2e684f58e7b6\"\u003e\u003ccode\u003ec9181c2\u003c/code\u003e\u003c/a\u003e Bump django from 5.2.12 to 5.2.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/717\"\u003e#717\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/1292cc060c8892d3cccc2bd67c44b3405a6693d4\"\u003e\u003ccode\u003e1292cc0\u003c/code\u003e\u003c/a\u003e Upgrade pre-commit to Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/716\"\u003e#716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/56d13889650fa7f71df504c8ab810967fd3fb44e\"\u003e\u003ccode\u003e56d1388\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/715\"\u003e#715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/43702c107ada21dca7e59836a8547ed1e62e77aa\"\u003e\u003ccode\u003e43702c1\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/714\"\u003e#714\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/c3dc97c20e2931b7557ab529703a6bf754df9110\"\u003e\u003ccode\u003ec3dc97c\u003c/code\u003e\u003c/a\u003e Bump pygments from 2.19.2 to 2.20.0 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/713\"\u003e#713\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/a2dee8a6b620f0ceaf385acfb1d0b778b0fd2892\"\u003e\u003ccode\u003ea2dee8a\u003c/code\u003e\u003c/a\u003e Improve Coverage.py configuration (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/712\"\u003e#712\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/fed476639744207a10bc1742d7420fc413b555bf\"\u003e\u003ccode\u003efed4766\u003c/code\u003e\u003c/a\u003e Upgrade dependencies (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/711\"\u003e#711\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/compare/4.0.1...4.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.20.2\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUse WAL with SQLite cache and fix close (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21154\"\u003e21154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdjust SQLite journal mode (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21217\"\u003e21217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCorrectly aggregate narrowing information on parent expressions (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21206\"\u003e21206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression related to generic callables (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21208\"\u003e21208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression by avoiding widening types in some contexts (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21242\"\u003e21242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix slicing in non-strict optional mode (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21282\"\u003e21282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emypyc: Fix match statement semantics for \u0026quot;or\u0026quot; pattern (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21156\"\u003e21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003emypyc: Fix issue with module dunder attributes (Piotr Sawicki, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21275\"\u003e21275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInitial support for Python 3.15.0a8 (Marc Mueller, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/21255\"\u003e21255\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eA5rocks\u003c/li\u003e\n\u003cli\u003eAaron Wieczorek\u003c/li\u003e\n\u003cli\u003eAdam Turner\u003c/li\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003easce\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrent Westbrook\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChris Burroughs\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eColin Watson\u003c/li\u003e\n\u003cli\u003eDonghoon Nam\u003c/li\u003e\n\u003cli\u003eE. M. Bray\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eGeorge Ogden\u003c/li\u003e\n\u003cli\u003egetzze\u003c/li\u003e\n\u003cli\u003egrayjk\u003c/li\u003e\n\u003cli\u003eGregor Riepl\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilliard\u003c/li\u003e\n\u003cli\u003eJames Le Cuirot\u003c/li\u003e\n\u003cli\u003eJeremy Nimmer\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eKai (Kazuya Ito)\u003c/li\u003e\n\u003cli\u003ekaushal trivedi\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eLukas Geiger\u003c/li\u003e\n\u003cli\u003eŁukasz Langa\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael R. Crusoe\u003c/li\u003e\n\u003cli\u003emichaelm-openai\u003c/li\u003e\n\u003cli\u003eNeil Schemenauer\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\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/python/mypy/commit/145a062651b5f9996b75ef32b7040bd2e885ed82\"\u003e\u003ccode\u003e145a062\u003c/code\u003e\u003c/a\u003e Bump version to 1.20.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/81cd49215c288eacb987de066f02daff2553b7c7\"\u003e\u003ccode\u003e81cd492\u003c/code\u003e\u003c/a\u003e Fix slicing with nonstrict optional (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21282\"\u003e#21282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/908d3441eecbaa2a6193165317177db834d7ca1a\"\u003e\u003ccode\u003e908d344\u003c/code\u003e\u003c/a\u003e [mypyc] Set dunder attrs when adding module to sys.modules (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21275\"\u003e#21275\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ba28610fac9d2b33be210ca8dcfe4bc47b7af424\"\u003e\u003ccode\u003eba28610\u003c/code\u003e\u003c/a\u003e Initial support for Python 3.15.0a8 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21255\"\u003e#21255\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7b0e09f48dbd3717ed008a273cd17e8e960c2037\"\u003e\u003ccode\u003e7b0e09f\u003c/code\u003e\u003c/a\u003e Fix match statement semantics for \u0026quot;or\u0026quot; pattern (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21156\"\u003e#21156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/92b74f226de62f7505f5ef5cb158e8ec9c58b8b7\"\u003e\u003ccode\u003e92b74f2\u003c/code\u003e\u003c/a\u003e Avoid widening types in conditional_types (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21242\"\u003e#21242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0dcbfaa40b0e360a16baea9cf851955375d91b54\"\u003e\u003ccode\u003e0dcbfaa\u003c/code\u003e\u003c/a\u003e Fix is_overlapping_types for generic callables (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21208\"\u003e#21208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/210f518dede35292033ef0d387847406a0ccef8f\"\u003e\u003ccode\u003e210f518\u003c/code\u003e\u003c/a\u003e Correctly aggregate narrowing information on parent expressions (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21206\"\u003e#21206\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c34530e53a10e385d8b0f1af4baa88a596b5ceaa\"\u003e\u003ccode\u003ec34530e\u003c/code\u003e\u003c/a\u003e Only set journal mode in coordinator (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21217\"\u003e#21217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/79a3ec6d01b56a27c00e9b3320c2b1d4d73a77f9\"\u003e\u003ccode\u003e79a3ec6\u003c/code\u003e\u003c/a\u003e Use WAL with SQLite cache, fix close (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21154\"\u003e#21154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.4.20260107 to 2.33.0.20260408\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\u003c/a\u003e\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/pytest-dev/pytest-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.4.0\"\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 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/dsp-testing/poetry-v2-repo/pull/8","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/dsp-testing%2Fpoetry-v2-repo/issues/8","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/8/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-04-09T05:16:20.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4229606033","node_id":"PR_kwDORTkgrc7RBOuc","number":10,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 4 updates","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-04-09T05:16:20.000Z","updated_at":"2026-05-14T07:01:38.440Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":4,"packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"mypy","old_version":"1.19.1","new_version":"1.20.0","repository_url":"https://github.com/python/mypy"},{"name":"ty","old_version":"0.0.17","new_version":"0.0.27","repository_url":"https://github.com/astral-sh/ty"},{"name":"types-requests","old_version":"2.32.4.20260107","new_version":"2.33.0.20260402","repository_url":"https://github.com/python/typeshed"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 4 updates in the / directory: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures), [mypy](https://github.com/python/mypy), [ty](https://github.com/astral-sh/ty) and [types-requests](https://github.com/python/typeshed).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.19.1 to 1.20.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eMypy Release Notes\u003c/h1\u003e\n\u003ch2\u003eNext Release\u003c/h2\u003e\n\u003ch2\u003eMypy 1.20\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.20.0 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features, performance\nimprovements and bug fixes. You can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003ePlanned Changes to Defaults and Flags in Mypy 2.0\u003c/h3\u003e\n\u003cp\u003eAs a reminder, we are planning to enable \u003ccode\u003e--local-partial-types\u003c/code\u003e by default in mypy 2.0, which\nwill likely be the next feature release. This will often require at least minor code changes. This\noption is implicitly enabled by mypy daemon, so this makes the behavior of daemon and non-daemon\nmodes consistent.\u003c/p\u003e\n\u003cp\u003eNote that this release improves the compatibility of \u003ccode\u003e--local-partial-types\u003c/code\u003e significantly to\nmake the switch easier (see below for more).\u003c/p\u003e\n\u003cp\u003eThis can also be configured in a mypy configuration file (use \u003ccode\u003eFalse\u003c/code\u003e to disable):\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003elocal_partial_types = True\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-local-partial-types\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eWe will also enable \u003ccode\u003e--strict-bytes\u003c/code\u003e by default in mypy 2.0. This usually requires at most\nminor code changes to adopt. For more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-strict-bytes\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eFinally, \u003ccode\u003e--allow-redefinition-new\u003c/code\u003e will be renamed to \u003ccode\u003e--allow-redefinition\u003c/code\u003e. If you want\nto continue using the older \u003ccode\u003e--allow-redefinition\u003c/code\u003e semantics which are less flexible (e.g.\nlimited support for conditional redefinitions), you can switch to \u003ccode\u003e--allow-redefinition-old\u003c/code\u003e,\nwhich is currently supported as an alias to the legacy \u003ccode\u003e--allow-redefinition\u003c/code\u003e behavior.\nTo use \u003ccode\u003e--allow-redefinition\u003c/code\u003e in the upcoming mypy 2.0, you can't use \u003ccode\u003e--no-local-partial-types\u003c/code\u003e.\nFor more information, refer to the\n\u003ca href=\"https://mypy.readthedocs.io/en/stable/command_line.html#cmdoption-mypy-allow-redefinition-new\"\u003edocumentation\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eBetter Type Narrowing\u003c/h3\u003e\n\u003cp\u003eMypy's implementation of narrowing has been substantially reworked. Mypy will now narrow more\naggressively, more consistently, and more correctly. In particular, you are likely to notice new\nnarrowing behavior in equality expressions (\u003ccode\u003e==\u003c/code\u003e), containment expressions (\u003ccode\u003ein\u003c/code\u003e),\u003c/p\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/python/mypy/commit/770d3ca4997032dc3a1c4f0b468e9f58e8f38505\"\u003e\u003ccode\u003e770d3ca\u003c/code\u003e\u003c/a\u003e Remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/4738ffafc56a0d175cba06e893ffa62e756fc7e0\"\u003e\u003ccode\u003e4738ffa\u003c/code\u003e\u003c/a\u003e Changelog updates for 1.20 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21109\"\u003e#21109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b4f07a717c3a239a9c77808c5550fff5f2638c96\"\u003e\u003ccode\u003eb4f07a7\u003c/code\u003e\u003c/a\u003e Use 'native-parser' instead of 'native-parse' for optional dependency (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21115\"\u003e#21115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7bec7b7f791790b1c925cdcc573ced564fbbf065\"\u003e\u003ccode\u003e7bec7b7\u003c/code\u003e\u003c/a\u003e [mypyc] Document librt and librt.base64 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21114\"\u003e#21114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c4825969450385cf3eb91a4fc02f273b369bc301\"\u003e\u003ccode\u003ec482596\u003c/code\u003e\u003c/a\u003e --allow-redefinition-new is no longer experimental (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21110\"\u003e#21110\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c916ca3fa79d9324dcbe130b18e24e2b5e2d1eb5\"\u003e\u003ccode\u003ec916ca3\u003c/code\u003e\u003c/a\u003e sdist: include \u003ccode\u003emisc/{diff-cache,apply-cache-diff}.py\u003c/code\u003e for `mypy/test/test_di...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b137e4ed41d6178f6dbd0e609db56b8c1ad5384a\"\u003e\u003ccode\u003eb137e4e\u003c/code\u003e\u003c/a\u003e [mypyc] Speed up native-to-native imports within the same group (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21101\"\u003e#21101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/978b711c21adadf5dae4db80127ddf270d79af5f\"\u003e\u003ccode\u003e978b711\u003c/code\u003e\u003c/a\u003e [mypyc] Fix range loop variable off-by-one after loop exit (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21098\"\u003e#21098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/67ada30918d1a32e1935e9ac468113e0aa002b79\"\u003e\u003ccode\u003e67ada30\u003c/code\u003e\u003c/a\u003e [stubtest] Check runtime availability of private types not marked `@type_chec...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/bdef6ef8734af07cab1bf0acadc1d8ab9add93c3\"\u003e\u003ccode\u003ebdef6ef\u003c/code\u003e\u003c/a\u003e librt cache tests: build respecting MYPY_TEST_PREFIX (\u003ca href=\"https://redirect.github.com/python/mypy/issues/21097\"\u003e#21097\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.19.1...v1.20.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ty` from 0.0.17 to 0.0.27\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ty/releases\"\u003ety's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.27\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-31.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix panic on debug builds when attempting to provide autocomplete suggestions for \u003ccode\u003elist[int]\u0026lt;CURSOR\u0026gt;()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix instance-attribute lookup in methods of protocol classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24213\"\u003e#24213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nested global and nonlocal lookups through forwarding scopes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24279\"\u003e#24279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic on \u003ccode\u003elist[Annotated[()]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24303\"\u003e#24303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stack overflow on \u003ccode\u003etype A = TypeIs[Callable[[], A]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24245\"\u003e#24245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003e_cls\u003c/code\u003e as the name of the first argument for synthesized \u003ccode\u003ecollections.namedtuple\u003c/code\u003e constructor methods (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24333\"\u003e#24333\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLSP server\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix semantic token classification for properties accessed on instances (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24065\"\u003e#24065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGrey out unused bindings in the editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23305\"\u003e#23305\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore type checking\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003eget()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24231\"\u003e#24231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003epop()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24229\"\u003e#24229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for functional TypedDict (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24174\"\u003e#24174\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24331\"\u003e#24331\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24295\"\u003e#24295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBan type qualifiers in PEP-695 type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24242\"\u003e#24242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnforce \u003ccode\u003eFinal\u003c/code\u003e attribute assignment rules for annotated and augmented writes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23880\"\u003e#23880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove support for \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23888\"\u003e#23888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInfer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't incorrectly infer the type of a method as being a singleton type when it's accessed off an instance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24039\"\u003e#24039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate type context through \u003ccode\u003eawait\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24256\"\u003e#24256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve union-likes in emitting union attribute errors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24263\"\u003e#24263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eShow the user where the variable was declared as \u003ccode\u003eFinal\u003c/code\u003e when emitting a diagnostic about a \u003ccode\u003eFinal\u003c/code\u003e variable being reassigned (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/denyszhak\"\u003e\u003ccode\u003e@​denyszhak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ty 0.0.27\u003c/h2\u003e\n\u003ch3\u003eInstall prebuilt binaries via shell script\u003c/h3\u003e\n\u003cpre lang=\"sh\"\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/astral-sh/ty/blob/main/CHANGELOG.md\"\u003ety's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.0.27\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-31.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix panic on debug builds when attempting to provide autocomplete suggestions for \u003ccode\u003elist[int]\u0026lt;CURSOR\u0026gt;()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24167\"\u003e#24167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix instance-attribute lookup in methods of protocol classes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24213\"\u003e#24213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix nested global and nonlocal lookups through forwarding scopes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24279\"\u003e#24279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix panic on \u003ccode\u003elist[Annotated[()]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24303\"\u003e#24303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix stack overflow on \u003ccode\u003etype A = TypeIs[Callable[[], A]]\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24245\"\u003e#24245\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003e_cls\u003c/code\u003e as the name of the first argument for synthesized \u003ccode\u003ecollections.namedtuple\u003c/code\u003e constructor methods (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24333\"\u003e#24333\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eLSP server\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix semantic token classification for properties accessed on instances (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24065\"\u003e#24065\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGrey out unused bindings in the editor (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23305\"\u003e#23305\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eCore type checking\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003eget()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24231\"\u003e#24231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd bidirectional type context for TypedDict \u003ccode\u003epop()\u003c/code\u003e defaults (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24229\"\u003e#24229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for functional TypedDict (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24174\"\u003e#24174\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24331\"\u003e#24331\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24295\"\u003e#24295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBan type qualifiers in PEP-695 type aliases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24242\"\u003e#24242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eEnforce \u003ccode\u003eFinal\u003c/code\u003e attribute assignment rules for annotated and augmented writes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23880\"\u003e#23880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImprove support for \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23888\"\u003e#23888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInfer lambda expressions with \u003ccode\u003eCallable\u003c/code\u003e type context (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22633\"\u003e#22633\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDon't incorrectly infer the type of a method as being a singleton type when it's accessed off an instance (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24039\"\u003e#24039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePropagate type context through \u003ccode\u003eawait\u003c/code\u003e expressions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24256\"\u003e#24256\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eResolve union-likes in emitting union attribute errors (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24263\"\u003e#24263\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eShow the user where the variable was declared as \u003ccode\u003eFinal\u003c/code\u003e when emitting a diagnostic about a \u003ccode\u003eFinal\u003c/code\u003e variable being reassigned (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/24194\"\u003e#24194\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mvanhorn\"\u003e\u003ccode\u003e@​mvanhorn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zanieb\"\u003e\u003ccode\u003e@​zanieb\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/denyszhak\"\u003e\u003ccode\u003e@​denyszhak\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/charliermarsh\"\u003e\u003ccode\u003e@​charliermarsh\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.0.26\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-26.\u003c/p\u003e\n\u003ch3\u003eBug fixes\u003c/h3\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/astral-sh/ty/commit/5c9e342c2ea67a0ac8749d32296dd3071974927a\"\u003e\u003ccode\u003e5c9e342\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.27 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3185\"\u003e#3185\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/e6a57315251f37ab3516cb614f891ece91595393\"\u003e\u003ccode\u003ee6a5731\u003c/code\u003e\u003c/a\u003e Update actions/cache action to v5.0.4 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3172\"\u003e#3172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/c47b982b86bb599d016af1d235174391f618ff16\"\u003e\u003ccode\u003ec47b982\u003c/code\u003e\u003c/a\u003e Update prek dependencies (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3173\"\u003e#3173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/657abcfc82221440481f9c9b76c6b6a3b89d5d00\"\u003e\u003ccode\u003e657abcf\u003c/code\u003e\u003c/a\u003e Update astral-sh/setup-uv action to v8 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3174\"\u003e#3174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/9e582cb48e9c2306073091d554c04853091d612b\"\u003e\u003ccode\u003e9e582cb\u003c/code\u003e\u003c/a\u003e Fetch the cargo-dist binary directly instead of using the installer (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3160\"\u003e#3160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/d5c51ea65be68cffcfa1afe204e5f6003fc06b02\"\u003e\u003ccode\u003ed5c51ea\u003c/code\u003e\u003c/a\u003e docs: use content tabs (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3146\"\u003e#3146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/9893776cbd744bec84a43463728ab3813b00968f\"\u003e\u003ccode\u003e9893776\u003c/code\u003e\u003c/a\u003e Use the \u003ccode\u003erelease\u003c/code\u003e environment in \u003ccode\u003epublish-docs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3147\"\u003e#3147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/94030512727f4320e8184f120c4330ed8f42ec6f\"\u003e\u003ccode\u003e9403051\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.26 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3145\"\u003e#3145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/d60899a14f6fe368e477c17f4205483aebdf84a8\"\u003e\u003ccode\u003ed60899a\u003c/code\u003e\u003c/a\u003e Bump version to 0.0.25 (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3125\"\u003e#3125\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ty/commit/db65b3e118a705be2694032fd2df613ea11565f1\"\u003e\u003ccode\u003edb65b3e\u003c/code\u003e\u003c/a\u003e Update documentation to reflect \u003ccode\u003etype:ignore\u003c/code\u003e changes (\u003ca href=\"https://redirect.github.com/astral-sh/ty/issues/3121\"\u003e#3121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ty/compare/0.0.17...0.0.27\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.4.20260107 to 2.33.0.20260402\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python/typeshed/commits\"\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 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/ReubenFrankel/target-jsonl/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ReubenFrankel%2Ftarget-jsonl/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-03-15T21:04:52.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4079192732","node_id":"PR_kwDOMt9I9c7Kwju4","number":118,"state":"closed","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 7 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-03-22T21:04:17.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-15T21:04:52.000Z","updated_at":"2026-03-22T21:04:20.000Z","time_to_close":604765,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":7,"packages":[{"name":"charset-normalizer","old_version":"3.4.4","new_version":"3.4.6","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"filelock","old_version":"3.25.0","new_version":"3.25.2","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"identify","old_version":"2.6.17","new_version":"2.6.18","repository_url":"https://github.com/pre-commit/identify"},{"name":"platformdirs","old_version":"4.9.2","new_version":"4.9.4","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"ruff","old_version":"0.15.4","new_version":"0.15.6","repository_url":"https://github.com/astral-sh/ruff"},{"name":"virtualenv","old_version":"21.1.0","new_version":"21.2.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 7 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.4` | `3.4.6` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.25.0` | `3.25.2` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.17` | `2.6.18` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.9.2` | `4.9.4` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.3.0` | `0.4.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.15.4` | `0.15.6` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `21.1.0` | `21.2.0` |\n\n\nUpdates `charset-normalizer` from 3.4.4 to 3.4.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.6\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.5\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.4...3.4.5\"\u003e3.4.5\u003c/a\u003e (2026-03-06)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=82\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.19.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit link to lib math in our optimized build. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/692\"\u003e#692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLogger level not restored correctly for empty byte sequences. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/701\"\u003e#701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTypeError when passing bytearray to from_bytes. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/703\"\u003e#703\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eApplied safe micro-optimizations in both our noise detector and language detector.\u003c/li\u003e\n\u003cli\u003eRewrote the \u003ccode\u003equery_yes_no\u003c/code\u003e function (inside CLI) to avoid using ambiguous licensed code.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ecd.py\u003c/code\u003e submodule into mypyc optional compilation to reduce further the performance impact.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\u003cbr /\u003e\nmypyc changed the usual binary output for the optimized wheel. Beware, especially if using PyInstaller or alike. See \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/714\"\u003ejawah/charset_normalizer#714\u003c/a\u003e\u003c/p\u003e\n\u003c/blockquote\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.5...3.4.6\"\u003e3.4.6\u003c/a\u003e (2026-03-15)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFlattened the logic in \u003ccode\u003echarset_normalizer.md\u003c/code\u003e for higher performance. Removed \u003ccode\u003eeligible(..)\u003c/code\u003e and \u003ccode\u003efeed(...)\u003c/code\u003e\nin favor of \u003ccode\u003efeed_info(...)\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound for mypy[c] to 1.20, for our optimized version.\u003c/li\u003e\n\u003cli\u003eUpdated \u003ccode\u003eUNICODE_RANGES_COMBINED\u003c/code\u003e using Unicode blocks v17.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEdge case where noise difference between two candidates can be almost insignificant. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/672\"\u003e#672\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eCLI \u003ccode\u003e--normalize\u003c/code\u003e writing to wrong path when passing multiple files in. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/702\"\u003e#702\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFreethreaded pre-built wheels now shipped in PyPI starting with 3.14t. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/616\"\u003e#616\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.4...3.4.5\"\u003e3.4.5\u003c/a\u003e (2026-03-06)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate \u003ccode\u003esetuptools\u003c/code\u003e constraint to \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=82\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.19.1\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd explicit link to lib math in our optimized build. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/692\"\u003e#692\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLogger level not restored correctly for empty byte sequences. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/701\"\u003e#701\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eTypeError when passing bytearray to from_bytes. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/703\"\u003e#703\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eApplied safe micro-optimizations in both our noise detector and language detector.\u003c/li\u003e\n\u003cli\u003eRewrote the \u003ccode\u003equery_yes_no\u003c/code\u003e function (inside CLI) to avoid using ambiguous licensed code.\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003ecd.py\u003c/code\u003e submodule into mypyc optional compilation to reduce further the performance impact.\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/jawah/charset_normalizer/commit/5478b84058a2a04e2d67a5dabbe0a273706707aa\"\u003e\u003ccode\u003e5478b84\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/715\"\u003e#715\u003c/a\u003e from jawah/release-3.4.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/5c0a09e2caf1b3977df691916e949e1de4b8a738\"\u003e\u003ccode\u003e5c0a09e\u003c/code\u003e\u003c/a\u003e :heavy_check_mark: add confidence for threading usage, mostly due to lru_cach...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef826b28d9f21e0059c93acc69a8bf364126c179\"\u003e\u003ccode\u003eef826b2\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/5564f1aebe56584150a988f565ff69ee316dcefe\"\u003e\u003ccode\u003e5564f1a\u003c/code\u003e\u003c/a\u003e :pencil: update docs accordingly\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0f2cf7d86e7c3ef4b77790a754b048bfada4fd09\"\u003e\u003ccode\u003e0f2cf7d\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/54a189446becf4f2b42772f0dce89a5ef79fe8cc\"\u003e\u003ccode\u003e54a1894\u003c/code\u003e\u003c/a\u003e :bug: fix --normalize writing to wrong path with multiple files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2177e28828bb7fcc2f1bed2a2d4463161a180812\"\u003e\u003ccode\u003e2177e28\u003c/code\u003e\u003c/a\u003e :pencil: update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b2497a54ba545dae84be01649d66fd52a7fcfc2d\"\u003e\u003ccode\u003eb2497a5\u003c/code\u003e\u003c/a\u003e :bug: edge case where noise difference between two candidates can be almost i...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/13a5d0b471cfb9b60b8cda84c78b7874c0267123\"\u003e\u003ccode\u003e13a5d0b\u003c/code\u003e\u003c/a\u003e :wrench: upgrade ci requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/b9ffbd4e8314b0f733ddb34eef32d80490eb947c\"\u003e\u003ccode\u003eb9ffbd4\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14t nox mypyc session\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.4...3.4.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.25.0 to 3.25.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.25.2\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): suppress EIO on close in Docker bind mounts by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/513\"\u003etox-dev/filelock#513\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.25.1...3.25.2\"\u003ehttps://github.com/tox-dev/filelock/compare/3.25.1...3.25.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.25.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs(logo): add branded project logo by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/507\"\u003etox-dev/filelock#507\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(win): restore best-effort lock file cleanup on release by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/511\"\u003etox-dev/filelock#511\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.25.0...3.25.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.25.0...3.25.1\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/tox-dev/filelock/blob/main/docs/changelog.rst\"\u003efilelock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.2 (2026-03-11)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): suppress EIO on close in Docker bind mounts :pr:\u003ccode\u003e513\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.1 (2026-03-09)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e510\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(win): restore best-effort lock file cleanup on release :pr:\u003ccode\u003e511\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e508\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(logo): add branded project logo :pr:\u003ccode\u003e507\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.25.0 (2026-03-01)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e✨ feat(async): add AsyncReadWriteLock :pr:\u003ccode\u003e506\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 :pr:\u003ccode\u003e503\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/upload-artifact from 6 to 7 :pr:\u003ccode\u003e502\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdd security policy\u003c/li\u003e\n\u003cli\u003eAdd permissions to check workflow :pr:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e499\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.3 (2026-02-19)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(unix): handle ENOENT race on FUSE/NFS during acquire :pr:\u003ccode\u003e495\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(ci): add trailing blank line after changelog entries :pr:\u003ccode\u003e492\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.2 (2026-02-16)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e🐛 fix(rw): close sqlite3 cursors and skip SoftFileLock Windows race :pr:\u003ccode\u003e491\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(test): resolve flaky write non-starvation test :pr:\u003ccode\u003e490\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: restructure using Diataxis framework :pr:\u003ccode\u003e489\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e3.24.1 (2026-02-15)\u003c/p\u003e\n\u003chr /\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/tox-dev/filelock/commit/5b9872c523b20db569d8832da4fb640e9c175ce6\"\u003e\u003ccode\u003e5b9872c\u003c/code\u003e\u003c/a\u003e Release 3.25.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/42b740aa076e81332402a16244c7cea60ac78851\"\u003e\u003ccode\u003e42b740a\u003c/code\u003e\u003c/a\u003e 🐛 fix(unix): suppress EIO on close in Docker bind mounts (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/513\"\u003e#513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/d8b04b5018932f53b3d2743fadac507dd616af5c\"\u003e\u003ccode\u003ed8b04b5\u003c/code\u003e\u003c/a\u003e Release 3.25.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0633386072b71dfd27c6799323aecca45fb6a094\"\u003e\u003ccode\u003e0633386\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/510\"\u003e#510\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/7f2247d81bc8eab802821cd40437a61c40368d17\"\u003e\u003ccode\u003e7f2247d\u003c/code\u003e\u003c/a\u003e 🐛 fix(win): restore best-effort lock file cleanup on release (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/5ae1c4e36548fc0ff6e24a26cb4187b65f2cdccb\"\u003e\u003ccode\u003e5ae1c4e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/508\"\u003e#508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bcffcfea7a8f616968e7cc45c047cc0d4142a064\"\u003e\u003ccode\u003ebcffcfe\u003c/code\u003e\u003c/a\u003e 📝 docs(logo): add branded project logo (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/507\"\u003e#507\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.25.0...3.25.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.17 to 2.6.18\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/07a801758ea68c17523122c1bcb0635b9d71cba1\"\u003e\u003ccode\u003e07a8017\u003c/code\u003e\u003c/a\u003e v2.6.18\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/2609c0ad2a9d3360d8815e63e0a4a9e1c78688a2\"\u003e\u003ccode\u003e2609c0a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/581\"\u003e#581\u003c/a\u003e from pre-commit/mxr-patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/74d7931da89ccc892dfb9dccf9b04eb389216903\"\u003e\u003ccode\u003e74d7931\u003c/code\u003e\u003c/a\u003e Configure pyproject.toml to have custom 'pyproject' file type\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.17...v2.6.18\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `platformdirs` from 4.9.2 to 4.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/platformdirs/releases\"\u003eplatformdirs's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.9.4\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd permissions to workflows by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/455\"\u003etox-dev/platformdirs#455\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/456\"\u003etox-dev/platformdirs#456\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/458\"\u003etox-dev/platformdirs#458\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs: add project logo to documentation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/459\"\u003etox-dev/platformdirs#459\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.3...4.9.4\"\u003ehttps://github.com/tox-dev/platformdirs/compare/4.9.3...4.9.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e4.9.3\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix test failures on BSD for runtime directory defaults by \u003ca href=\"https://github.com/Fridayai700\"\u003e\u003ccode\u003e@​Fridayai700\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/451\"\u003etox-dev/platformdirs#451\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRespect XDG_CONFIG_HOME in _get_user_dirs_folder by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/453\"\u003etox-dev/platformdirs#453\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd missing _optionally_create_directory in Android user_log_dir and user_runtime_dir by \u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/452\"\u003etox-dev/platformdirs#452\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/Fridayai700\"\u003e\u003ccode\u003e@​Fridayai700\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/451\"\u003etox-dev/platformdirs#451\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bysiber\"\u003e\u003ccode\u003e@​bysiber\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/pull/453\"\u003etox-dev/platformdirs#453\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.3\"\u003ehttps://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.3\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/tox-dev/platformdirs/blob/main/docs/changelog.rst\"\u003eplatformdirs's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e###########\nChangelog\n###########\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.4 (2026-03-05)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e461\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eUpdate README.md\u003c/li\u003e\n\u003cli\u003e📝 docs: add project logo to documentation :pr:\u003ccode\u003e459\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump the all group with 2 updates :pr:\u003ccode\u003e457\u003c/code\u003e - by :user:\u003ccode\u003edependabot[bot]\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003eAdd permissions to workflows :pr:\u003ccode\u003e455\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAdd security policy\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate :pr:\u003ccode\u003e454\u003c/code\u003e - by :user:\u003ccode\u003epre-commit-ci[bot]\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.2 (2026-02-16)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs: restructure following Diataxis framework :pr:\u003ccode\u003e448\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(platforms): fix RST formatting and TOC hierarchy :pr:\u003ccode\u003e447\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.1 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs: enhance README, fix issues, and reorganize platforms.rst :pr:\u003ccode\u003e445\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.9.0 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📚 docs: split usage guide into tutorial, how-to, and reference :pr:\u003ccode\u003e441\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add site_bin_dir property :pr:\u003ccode\u003e443\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add site_applications_dir property :pr:\u003ccode\u003e442\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(unix): use correct runtime dir path for OpenBSD :pr:\u003ccode\u003e440\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e📝 docs(usage): document use_site_for_root parameter :pr:\u003ccode\u003e439\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003e4.8.0 (2026-02-14)\u003c/p\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003e📝 docs(usage): note that home dir is in stdlib :pr:\u003ccode\u003e431\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add user_applications_dir property :pr:\u003ccode\u003e432\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(api): add user_bin_dir property :pr:\u003ccode\u003e430\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(macos): yield individual site dirs in iter_*_dirs :pr:\u003ccode\u003e429\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e✨ feat(windows): add WIN_PD_OVERRIDE_* env var overrides :pr:\u003ccode\u003e428\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/3fdb23e77c02dc11d0ddc82c3086c3240b236157\"\u003e\u003ccode\u003e3fdb23e\u003c/code\u003e\u003c/a\u003e Release 4.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/96e0ed0f26ed62790ca586bb0d6fe89b9306ed44\"\u003e\u003ccode\u003e96e0ed0\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/461\"\u003e#461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/455f98ec6e82730f2f288f7ae35995b0f51d58df\"\u003e\u003ccode\u003e455f98e\u003c/code\u003e\u003c/a\u003e Update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/423bc18c91162b894d4cc777b04bb409d910e80a\"\u003e\u003ccode\u003e423bc18\u003c/code\u003e\u003c/a\u003e 📝 docs: add project logo to documentation (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/459\"\u003e#459\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/b10b8c549c152dffc20660371a9079821007317a\"\u003e\u003ccode\u003eb10b8c5\u003c/code\u003e\u003c/a\u003e Standardize .github files to .yaml suffix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/27582dfe04b6320a201399c25df0a2f1f7f89b89\"\u003e\u003ccode\u003e27582df\u003c/code\u003e\u003c/a\u003e build(deps): bump the all group with 2 updates (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/457\"\u003e#457\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/da59cc6a5725e9b63bba38c70e9119b73a0cd300\"\u003e\u003ccode\u003eda59cc6\u003c/code\u003e\u003c/a\u003e Move SECURITY.md to .github/SECURITY.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/5ef8a10eec033f631a47f45fcd1d853c7b9063f7\"\u003e\u003ccode\u003e5ef8a10\u003c/code\u003e\u003c/a\u003e Add permissions to workflows (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/455\"\u003e#455\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/2f0cd48571f53b7acb4097f20787f416cb056d5d\"\u003e\u003ccode\u003e2f0cd48\u003c/code\u003e\u003c/a\u003e Add security policy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/platformdirs/commit/aeb0da1b16c6e1b80c0e00766ec958588e151aa9\"\u003e\u003ccode\u003eaeb0da1\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/platformdirs/issues/454\"\u003e#454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/platformdirs/compare/4.9.2...4.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.15.4 to 0.15.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.6\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-12.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003elazy\u003c/code\u003e import parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23755\"\u003e#23755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for star-unpacking of comprehensions (PEP 798) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23788\"\u003e#23788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject semantic syntax errors for lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23757\"\u003e#23757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop a few rules from the preview default set (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23879\"\u003e#23879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag \u003ccode\u003eVariable.get()\u003c/code\u003e calls outside of task execution context (\u003ccode\u003eAIR003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23584\"\u003e#23584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag runtime-varying values in DAG/task constructor arguments (\u003ccode\u003eAIR304\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23631\"\u003e#23631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003edelattr-with-constant\u003c/code\u003e (\u003ccode\u003eB043\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23737\"\u003e#23737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Add \u003ccode\u003eTID254\u003c/code\u003e to enforce lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23777\"\u003e#23777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Allow users to ban lazy imports with \u003ccode\u003eTID254\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23847\"\u003e#23847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Retain \u003ccode\u003elazy\u003c/code\u003e keyword when sorting imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23762\"\u003e#23762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Add \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e automatically (\u003ccode\u003eUP006\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23260\"\u003e#23260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Support \u003ccode\u003enewline\u003c/code\u003e parameter in \u003ccode\u003eFURB101\u003c/code\u003e for Python 3.13+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23754\"\u003e#23754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add \u003ccode\u003eos-path-commonprefix\u003c/code\u003e (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23814\"\u003e#23814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add unsafe fix for os-path-commonprefix (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23852\"\u003e#23852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Limit \u003ccode\u003eRUF036\u003c/code\u003e to typing contexts; make it unsafe for non-typing-only (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23765\"\u003e#23765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Use starred unpacking for \u003ccode\u003eRUF017\u003c/code\u003e in Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23789\"\u003e#23789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e creating unwanted leading whitespace (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23773\"\u003e#23773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e breaking shebangs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23577\"\u003e#23577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve required annotation parentheses in annotated assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23865\"\u003e#23865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve type-expression parentheses in the formatter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23867\"\u003e#23867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Fix stack overflow in \u003ccode\u003eANN401\u003c/code\u003e on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23912\"\u003e#23912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e, \u003ccode\u003eN815\u003c/code\u003e, \u003ccode\u003eN816\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23899\"\u003e#23899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix comment duplication in fixes (\u003ccode\u003ePERF401\u003c/code\u003e, \u003ccode\u003ePERF403\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23729\"\u003e#23729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Properly trigger \u003ccode\u003esuper\u003c/code\u003e change in nested class (\u003ccode\u003eUP008\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22677\"\u003e#22677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Avoid syntax errors in \u003ccode\u003eRUF036\u003c/code\u003e fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23764\"\u003e#23764\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Flag \u003ccode\u003eS501\u003c/code\u003e with \u003ccode\u003erequests.request\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23873\"\u003e#23873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Fix WSL detection in non-Docker containers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22879\"\u003e#22879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-print\u003c/code\u003e] Ignore \u003ccode\u003epprint\u003c/code\u003e calls with \u003ccode\u003estream=\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23787\"\u003e#23787\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs for Markdown code block formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23871\"\u003e#23871\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix misleading description for \u003ccode\u003eB904\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23731\"\u003e#23731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\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/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.15.6\u003c/h2\u003e\n\u003cp\u003eReleased on 2026-03-12.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003elazy\u003c/code\u003e import parsing (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23755\"\u003e#23755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for star-unpacking of comprehensions (PEP 798) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23788\"\u003e#23788\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReject semantic syntax errors for lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23757\"\u003e#23757\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDrop a few rules from the preview default set (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23879\"\u003e#23879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag \u003ccode\u003eVariable.get()\u003c/code\u003e calls outside of task execution context (\u003ccode\u003eAIR003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23584\"\u003e#23584\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Flag runtime-varying values in DAG/task constructor arguments (\u003ccode\u003eAIR304\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23631\"\u003e#23631\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003edelattr-with-constant\u003c/code\u003e (\u003ccode\u003eB043\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23737\"\u003e#23737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Add \u003ccode\u003eTID254\u003c/code\u003e to enforce lazy imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23777\"\u003e#23777\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-tidy-imports\u003c/code\u003e] Allow users to ban lazy imports with \u003ccode\u003eTID254\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23847\"\u003e#23847\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Retain \u003ccode\u003elazy\u003c/code\u003e keyword when sorting imports (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23762\"\u003e#23762\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Add \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e automatically (\u003ccode\u003eUP006\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23260\"\u003e#23260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003erefurb\u003c/code\u003e] Support \u003ccode\u003enewline\u003c/code\u003e parameter in \u003ccode\u003eFURB101\u003c/code\u003e for Python 3.13+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23754\"\u003e#23754\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add \u003ccode\u003eos-path-commonprefix\u003c/code\u003e (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23814\"\u003e#23814\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Add unsafe fix for os-path-commonprefix (\u003ccode\u003eRUF071\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23852\"\u003e#23852\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Limit \u003ccode\u003eRUF036\u003c/code\u003e to typing contexts; make it unsafe for non-typing-only (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23765\"\u003e#23765\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Use starred unpacking for \u003ccode\u003eRUF017\u003c/code\u003e in Python 3.15+ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23789\"\u003e#23789\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e creating unwanted leading whitespace (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23773\"\u003e#23773\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003e--add-noqa\u003c/code\u003e breaking shebangs (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23577\"\u003e#23577\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve required annotation parentheses in annotated assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23865\"\u003e#23865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[formatter] Preserve type-expression parentheses in the formatter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23867\"\u003e#23867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Fix stack overflow in \u003ccode\u003eANN401\u003c/code\u003e on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23912\"\u003e#23912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e, \u003ccode\u003eN815\u003c/code\u003e, \u003ccode\u003eN816\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23899\"\u003e#23899\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eperflint\u003c/code\u003e] Fix comment duplication in fixes (\u003ccode\u003ePERF401\u003c/code\u003e, \u003ccode\u003ePERF403\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23729\"\u003e#23729\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Properly trigger \u003ccode\u003esuper\u003c/code\u003e change in nested class (\u003ccode\u003eUP008\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22677\"\u003e#22677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Avoid syntax errors in \u003ccode\u003eRUF036\u003c/code\u003e fixes (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23764\"\u003e#23764\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Flag \u003ccode\u003eS501\u003c/code\u003e with \u003ccode\u003erequests.request\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23873\"\u003e#23873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-executable\u003c/code\u003e] Fix WSL detection in non-Docker containers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/22879\"\u003e#22879\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-print\u003c/code\u003e] Ignore \u003ccode\u003epprint\u003c/code\u003e calls with \u003ccode\u003estream=\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23787\"\u003e#23787\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs for Markdown code block formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23871\"\u003e#23871\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Fix misleading description for \u003ccode\u003eB904\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/23731\"\u003e#23731\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/zsol\"\u003e\u003ccode\u003e@​zsol\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/astral-sh/ruff/commit/e4c7f357777a2fdd34dbe6a98b1b7d3e7488f675\"\u003e\u003ccode\u003ee4c7f35\u003c/code\u003e\u003c/a\u003e Bump 0.15.6 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23919\"\u003e#23919\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/edfe6c17a493669227da45ce7edc786208d9d0b0\"\u003e\u003ccode\u003eedfe6c1\u003c/code\u003e\u003c/a\u003e [ty] Narrow type context during collection literal inference (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23844\"\u003e#23844\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/dd16d689abd9d0fa1caf4316e70479fd422b6142\"\u003e\u003ccode\u003edd16d68\u003c/code\u003e\u003c/a\u003e Exclude broken symlink in ecosystem check (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23921\"\u003e#23921\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3f94c6ac6397cdc3160459d9d6e3892e3f3242dd\"\u003e\u003ccode\u003e3f94c6a\u003c/code\u003e\u003c/a\u003e Fix stack overflow in ANN401 on quoted annotations with escape sequences (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23\"\u003e#23\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/91fc7bd3f936974d7107ba8fd0668bc251a55c58\"\u003e\u003ccode\u003e91fc7bd\u003c/code\u003e\u003c/a\u003e [ty] Fix false-positive diagnostics for PEP-604 union annotations on attribut...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/04229cffb44dfe8c64a0879eb3cea472a08d1565\"\u003e\u003ccode\u003e04229cf\u003c/code\u003e\u003c/a\u003e [ty] Initial test suite for PEP-728 \u003ccode\u003eTypedDict\u003c/code\u003e features (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23832\"\u003e#23832\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/728b9d6fd300d492fc2572bcfade170141296f97\"\u003e\u003ccode\u003e728b9d6\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003epep8-naming\u003c/code\u003e] Check naming conventions in \u003ccode\u003ematch\u003c/code\u003e pattern bindings (\u003ccode\u003eN806\u003c/code\u003e,...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/88d1eecd261679fc9d1d10f30d814230a7f28513\"\u003e\u003ccode\u003e88d1eec\u003c/code\u003e\u003c/a\u003e [ty] Ensure a \u003ccode\u003etype[]\u003c/code\u003e type \u003ccode\u003eT\u003c/code\u003e is always considered assignable to a union th...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/37cdd61406ad4965847c9baa7c3f6ca633887d68\"\u003e\u003ccode\u003e37cdd61\u003c/code\u003e\u003c/a\u003e Fix lambda body formatting for multiline calls and subscripts (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/23866\"\u003e#23866\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/a25a4df54aca67d23b4867ddad634fe0768fd6a2\"\u003e\u003ccode\u003ea25a4df\u003c/code\u003e\u003c/a\u003e [ty] Disambiguate duplicate-looking overloaded callables in union display (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/2\"\u003e#2\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.15.4...0.15.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `virtualenv` from 21.1.0 to 21.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/virtualenv/releases\"\u003evirtualenv's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e21.2.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eMove SECURITY.md to .github/SECURITY.md by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3077\"\u003epypa/virtualenv#3077\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStandardize .github files to .yaml suffix by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3079\"\u003epypa/virtualenv#3079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd type annotations to embed wheel generator output by \u003ca href=\"https://github.com/rahuldevikar\"\u003e\u003ccode\u003e@​rahuldevikar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3085\"\u003epypa/virtualenv#3085\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix broken README heading introduced in docs restructure by \u003ca href=\"https://github.com/rahuldevikar\"\u003e\u003ccode\u003e@​rahuldevikar\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3088\"\u003epypa/virtualenv#3088\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(bash): use BASH_SOURCE in activate relocation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3091\"\u003epypa/virtualenv#3091\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e🐛 fix(create): prevent venv from racing virtualenv on gitignore creation by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/virtualenv/pull/3092\"\u003epypa/virtualenv#3092\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/virtualenv/compare/21.1.0...21.2.0\"\u003ehttps://github.com/pypa/virtualenv/compare/21.1.0...21.2.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/pypa/virtualenv/blob/main/docs/changelog.rst\"\u003evirtualenv's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eFeatures - 21.2.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate embed wheel generator (\u003ccode\u003etasks/upgrade_wheels.py\u003c/code\u003e) to include type annotations in generated output - by\n:user:\u003ccode\u003erahuldevikar\u003c/code\u003e. (:issue:\u003ccode\u003e3075\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes - 21.2.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePass \u003ccode\u003e--without-scm-ignore-files\u003c/code\u003e to subprocess venv on Python 3.13+ so virtualenv controls \u003ccode\u003e.gitignore\u003c/code\u003e creation,\nfixing flaky \u003ccode\u003etest_create_no_seed\u003c/code\u003e and \u003ccode\u003e--no-vcs-ignore\u003c/code\u003e being ignored in subprocess path - by\n:user:\u003ccode\u003egaborbernat\u003c/code\u003e. (:issue:\u003ccode\u003e3089\u003c/code\u003e)\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eBASH_SOURCE[0]\u003c/code\u003e instead of \u003ccode\u003e$0\u003c/code\u003e in the bash activate script relocation fallback, fixing incorrect \u003ccode\u003ePATH\u003c/code\u003e\nwhen sourcing the activate script from a different directory - by :user:\u003ccode\u003egaborbernat\u003c/code\u003e. (:issue:\u003ccode\u003e3090\u003c/code\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003chr /\u003e\n\u003cp\u003ev21.1.0 (2026-02-27)\u003c/p\u003e\n\u003chr /\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/pypa/virtualenv/commit/0b6f4445da2560cb11c4808ead464d94ffdf1b05\"\u003e\u003ccode\u003e0b6f444\u003c/code\u003e\u003c/a\u003e release 21.2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/e1af35dc7808e75410c55490c35421f461af2920\"\u003e\u003ccode\u003ee1af35d\u003c/code\u003e\u003c/a\u003e 🐛 fix(create): prevent venv from racing virtualenv on gitignore creation (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3092\"\u003e#3092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/f05bf08f6e2b6fe313aa7378475a30d6151180e2\"\u003e\u003ccode\u003ef05bf08\u003c/code\u003e\u003c/a\u003e 🐛 fix(bash): use BASH_SOURCE in activate relocation (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3091\"\u003e#3091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/0cd0e09526863f46f91a4afc057f179fdacf3878\"\u003e\u003ccode\u003e0cd0e09\u003c/code\u003e\u003c/a\u003e fix broken README heading introduced in docs restructure (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3088\"\u003e#3088\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/b7ab17e4739322cf2793ff348e8b2c15c6ebcffe\"\u003e\u003ccode\u003eb7ab17e\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3087\"\u003e#3087\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/f2062bc8ece1d142523209af4785d302f83e6807\"\u003e\u003ccode\u003ef2062bc\u003c/code\u003e\u003c/a\u003e chore(deps): bump astral-sh/setup-uv from 4 to 7 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3086\"\u003e#3086\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/eb27e55d716d8836b24296efa3a73b98ff1b29e8\"\u003e\u003ccode\u003eeb27e55\u003c/code\u003e\u003c/a\u003e Add type annotations to embed wheel generator output (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/fbb3bd183f2f98bfa68211e014db8995dae64b79\"\u003e\u003ccode\u003efbb3bd1\u003c/code\u003e\u003c/a\u003e chore(deps): bump peter-evans/create-pull-request from 7 to 8 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3081\"\u003e#3081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/a1d3963f1c078a2a7b56af14cf824e254531de65\"\u003e\u003ccode\u003ea1d3963\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3080\"\u003e#3080\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/virtualenv/commit/e768d5632065d45a06c4d2e99610e1c92a267166\"\u003e\u003ccode\u003ee768d56\u003c/code\u003e\u003c/a\u003e chore(deps): bump actions/upload-artifact from 4 to 7 (\u003ca href=\"https://redirect.github.com/pypa/virtualenv/issues/3082\"\u003e#3082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/virtualenv/compare/21.1.0...21.2.0\"\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 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/github/annotated-logger/pull/118","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/118","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/118/packages"}},{"old_version":"\u003c0.4.0,\u003e=0.3.0","new_version":"\u003e=0.3.0,\u003c0.5.0","update_type":null,"path":null,"pr_created_at":"2026-03-09T04:47:57.000Z","version_change":"\u003c0.4.0,\u003e=0.3.0 → \u003e=0.3.0,\u003c0.5.0","issue":{"uuid":"4043325399","node_id":"PR_kwDODLJHgM7I9NqM","number":481,"state":"open","title":"Update pytest-github-actions-annotate-failures requirement from \u003c0.4.0,\u003e=0.3.0 to \u003e=0.3.0,\u003c0.5.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-09T04:47:57.000Z","updated_at":"2026-03-09T04:47:57.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Update","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"\u003c0.4.0,\u003e=0.3.0","new_version":"\u003e=0.3.0,\u003c0.5.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) to permit the latest version.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.4.0\"\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 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/sthagen/streamlit-streamlit/pull/481","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/sthagen%2Fstreamlit-streamlit/issues/481","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/481/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-03-04T01:55:58.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4019602962","node_id":"PR_kwDOGUrTac7Hwaf3","number":879,"state":"open","title":"Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":5,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-04T01:55:58.000Z","updated_at":"2026-03-04T01:57:53.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/twsl/whos-there/pull/879","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/twsl%2Fwhos-there/issues/879","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/879/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-03-03T22:13:12.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4018976236","node_id":"PR_kwDOAALQjM7Huaq6","number":10168,"state":"open","title":"Chore(deps): Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-03T22:13:12.000Z","updated_at":"2026-03-03T22:19:19.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Chore(deps): Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.3.0\u0026new-version=0.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 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/celery/celery/pull/10168","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/celery%2Fcelery/issues/10168","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10168/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":"the dev-deps group","pr_created_at":"2026-03-03T04:54:38.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4014704133","node_id":"PR_kwDOGA9Nm87Hgeka","number":613,"state":"closed","title":"Bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0 in the dev-deps group","user":"dependabot[bot]","labels":["dependencies","python:uv"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-03-04T04:54:43.000Z","author_association":null,"state_reason":null,"created_at":"2026-03-03T04:54:38.000Z","updated_at":"2026-03-04T04:54:44.000Z","time_to_close":86405,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":"the dev-deps group","ecosystem":"pip"},"body":"Bumps the dev-deps group with 1 update: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.3.0 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/kellerza/sunsynk/pull/613","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/kellerza%2Fsunsynk/issues/613","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/613/packages"}},{"old_version":"0.3.0","new_version":"0.4.0","update_type":"minor","path":null,"pr_created_at":"2026-03-03T04:09:46.000Z","version_change":"0.3.0 → 0.4.0","issue":{"uuid":"4014588632","node_id":"PR_kwDODcMJdM7HgHQd","number":20675,"state":"open","title":"core: bump pytest-github-actions-annotate-failures from 0.3.0 to 0.4.0","user":"dependabot[bot]","labels":["dependencies"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-03T04:09:46.000Z","updated_at":"2026-03-03T04:23:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"core","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.3.0","new_version":"0.4.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.3.0 to 0.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.4.0\u003c/h2\u003e\n\u003ch2\u003eBreaking\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebreaking: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire pytest 7+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/116\"\u003e#116\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efeat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e) \u003ca href=\"https://github.com/rmuir\"\u003e\u003ccode\u003e@​rmuir\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix internal error when processing warnings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/117\"\u003e#117\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: examples should use newest actions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/109\"\u003e#109\u003c/a\u003e) \u003ca href=\"https://github.com/vil02\"\u003e\u003ccode\u003e@​vil02\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMaintenance\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e) \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci: Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/122\"\u003e#122\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/119\"\u003e#119\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/118\"\u003e#118\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/115\"\u003e#115\u003c/a\u003e) \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/114\"\u003e#114\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/attest-build-provenance from 2 to 3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/112\"\u003e#112\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/111\"\u003e#111\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/110\"\u003e#110\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebuild(deps): bump astral-sh/setup-uv from 5 to 6 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/108\"\u003e#108\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\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-github-actions-annotate-failures/commit/f48349e8caac9efa6916894c97f1b03ff11f15bb\"\u003e\u003ccode\u003ef48349e\u003c/code\u003e\u003c/a\u003e fix: use setuptools-scm and release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/128\"\u003e#128\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f6004c8d10d86a30fcf4f1810f3f3812c363aa15\"\u003e\u003ccode\u003ef6004c8\u003c/code\u003e\u003c/a\u003e feat!: require python\u0026gt;=3.10 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/131\"\u003e#131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/8991a45651b8e0c37fb1d05c3ecdef2a2484965f\"\u003e\u003ccode\u003e8991a45\u003c/code\u003e\u003c/a\u003e chore: release drafter part2 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/130\"\u003e#130\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/7b401745a38b0ceaac0af6c7a62f345ae2334357\"\u003e\u003ccode\u003e7b40174\u003c/code\u003e\u003c/a\u003e chore: enable release drafter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/129\"\u003e#129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/58be6ad78a1c771de8fa392af506af020fcff327\"\u003e\u003ccode\u003e58be6ad\u003c/code\u003e\u003c/a\u003e feat: Support Pytest 9+ subtests (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/121\"\u003e#121\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/26a0c80f9730bc6b56e53baaa95244b252daa843\"\u003e\u003ccode\u003e26a0c80\u003c/code\u003e\u003c/a\u003e Test with Pytest 9 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/120\"\u003e#120\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/d33d1999d3d889772b97504cf096031377d3d926\"\u003e\u003ccode\u003ed33d199\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/attest-build-provenance from 3 to 4 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/126\"\u003e#126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/4e6cbcafa532391369b586b124f2a387858dcc45\"\u003e\u003ccode\u003e4e6cbca\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 7 to 8 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/127\"\u003e#127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/3c82f58b821e60ff3732e3543484e74cd6eed49f\"\u003e\u003ccode\u003e3c82f58\u003c/code\u003e\u003c/a\u003e fix(warnings): use GITHUB_WORKSPACE instead of GITHUB_WORKFLOW (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/124\"\u003e#124\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/67da72367d3993272ecc7722772fe13b9d4a15c6\"\u003e\u003ccode\u003e67da723\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/download-artifact from 6 to 7 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/123\"\u003e#123\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.3.0...v0.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=pytest-github-actions-annotate-failures\u0026package-manager=uv\u0026previous-version=0.3.0\u0026new-version=0.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 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/goauthentik/authentik/pull/20675","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/goauthentik%2Fauthentik/issues/20675","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20675/packages"}},{"old_version":"0.1.8","new_version":"0.3.0","update_type":"minor","path":"the development-dependencies group across 1 directory","pr_created_at":"2026-01-25T19:47:39.000Z","version_change":"0.1.8 → 0.3.0","issue":{"uuid":"3853766526","node_id":"PR_kwDODMcPFc6_QaaD","number":54,"state":"closed","title":"chore(deps-dev): bump pytest-github-actions-annotate-failures from 0.1.8 to 0.3.0 in the development-dependencies group across 1 directory","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-03-01T11:13:21.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-25T19:47:39.000Z","updated_at":"2026-03-01T11:13:22.000Z","time_to_close":2993142,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":"the development-dependencies group across 1 directory","ecosystem":"pip"},"body":"Bumps the development-dependencies group with 1 update in the / directory: [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.1.8\u0026new-version=0.3.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 \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/finswimmer/poetry/pull/54","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/finswimmer%2Fpoetry/issues/54","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/54/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-10-01T19:28:03.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"2879399271","node_id":"PR_kwDOPbpjzc6roCVn","number":20,"state":"open","title":"Bump the pip-deps group across 1 directory with 12 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-10-01T19:28:03.000Z","updated_at":"2025-10-01T19:28:04.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":12,"packages":[{"name":"pydantic","old_version":"2.11.7","new_version":"2.11.9","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pandas","old_version":"2.3.1","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pypdf","old_version":"5.9.0","new_version":"6.1.1","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"rapidfuzz","old_version":"3.13.0","new_version":"3.14.1","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.1.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 12 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.11.7` | `2.11.9` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.1` | `2.3.3` |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.1.1` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.13.0` | `3.14.1` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.13.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `7.0.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.15.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.2` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\n\nUpdates `pydantic` from 2.11.7 to 2.11.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pydantic/pydantic/releases\"\u003epydantic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 2025-09-13\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.8...v2.11.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.11.8 2025-09-13\u003c/h2\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\"\u003ehttps://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.8\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/pydantic/pydantic/blob/v2.11.9/HISTORY.md\"\u003epydantic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.11.9 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.9\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eBackport v1.10.23 changes by \u003ca href=\"https://github.com/Viicos\"\u003e\u003ccode\u003e@​Viicos\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.11.8 (2025-09-13)\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/pydantic/pydantic/releases/tag/v2.11.8\"\u003eGitHub release\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eWhat's Changed\u003c/h3\u003e\n\u003ch4\u003eFixes\u003c/h4\u003e\n\u003cul\u003e\n\u003cli\u003eFix mypy plugin for mypy 1.18 by \u003ca href=\"https://github.com/cdce8p\"\u003e\u003ccode\u003e@​cdce8p\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pydantic/pydantic/pull/12209\"\u003e#12209\u003c/a\u003e\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/pydantic/pydantic/commit/92310953c146a2ac668a0141be820c083e325f5d\"\u003e\u003ccode\u003e9231095\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/f003a89eeaff35ee18f220a2c790d20536e3d0ab\"\u003e\u003ccode\u003ef003a89\u003c/code\u003e\u003c/a\u003e Backport v1.10.23 changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/96b81ddaf93a1f2e19ff1609080c33de10b8d931\"\u003e\u003ccode\u003e96b81dd\u003c/code\u003e\u003c/a\u003e Prepare release v2.11.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pydantic/pydantic/commit/966f377692194b3f1d6d5155ac78052bec0a751d\"\u003e\u003ccode\u003e966f377\u003c/code\u003e\u003c/a\u003e Fix mypy v2 plugin for upcoming \u003ccode\u003e1.18\u003c/code\u003e mypy release\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/pydantic/pydantic/compare/v2.11.7...v2.11.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pandas` from 2.3.1 to 2.3.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.3\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.3.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.3.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.3 supports Python 3.9 and higher, and is the first release to support Python 3.14.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\u003c/p\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\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/pandas-dev/pandas/commit/9c8bc3e55188c8aff37207a74f1dd144980b8874\"\u003e\u003ccode\u003e9c8bc3e\u003c/code\u003e\u003c/a\u003e RLS: 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6aa788a00bda9b0f004302076dad94df3edeafc7\"\u003e\u003ccode\u003e6aa788a\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: prepare 2.3.3 whatsnew notes for release (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62499\"\u003e#62499\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62508\"\u003e#62508\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/b64f0df403d11ac733d9f460f89a5e99c8044ed0\"\u003e\u003ccode\u003eb64f0df\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: avoid validation error for ufunc with string[python] ar...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/058eb2b0edfc408dae9966ef1f03372f2a3ff04c\"\u003e\u003ccode\u003e058eb2b\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: String[pyarrow] comparison with mixed object (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62424\"\u003e#62424\u003c/a\u003e) (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/2ca088daef6a9d9333fea8aedffc7e50d28dfdee\"\u003e\u003ccode\u003e2ca088d\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DEPR: remove the Period resampling deprecation (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62480\"\u003e#62480\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62\"\u003e#62\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/92bf98f623572ed053d48be5818c8503f1b61888\"\u003e\u003ccode\u003e92bf98f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix .str.isdigit to honor unicode superscript for older...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e57c7d6a2247316188fba0ba2a0db3c11028d75c\"\u003e\u003ccode\u003ee57c7d6\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62452\"\u003e#62452\u003c/a\u003e on branch 2.3.x (TST: Adjust tests for numexpr 2.13) (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62454\"\u003e#62454\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/e0fe9a03c90e560c34a3bbbdd1735a8b64f7b281\"\u003e\u003ccode\u003ee0fe9a0\u003c/code\u003e\u003c/a\u003e Backport to 2.3.x: REGR: from_records not initializing subclasses properly (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/23a1085e641c8e3a5b500e319c5973e4160b9236\"\u003e\u003ccode\u003e23a1085\u003c/code\u003e\u003c/a\u003e BUG: improve future warning for boolean operations with missaligned indexes (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/61136969fb18b438b6660bd5d485d0236dbf4a71\"\u003e\u003ccode\u003e6113696\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62396\"\u003e#62396\u003c/a\u003e on branch 2.3.x (PKG/DOC: indicate Python 3.14 support in ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.1...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pypdf` from 5.9.0 to 6.1.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.1.1, 2025-09-28\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInsert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMake embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation (DOC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.1.0...6.1.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.1.0, 2025-09-21\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e) by \u003ca href=\"https://github.com/Arya-A-Nair\"\u003e\u003ccode\u003e@​Arya-A-Nair\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd all font metrics for base 14 Type 1 PDF fonts (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3363\"\u003e#3363\u003c/a\u003e) by \u003ca href=\"https://github.com/PJBrs\"\u003e\u003ccode\u003e@​PJBrs\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAllow deleting embedded files (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3461\"\u003e#3461\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for Python in FIPS mode for document identifier (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3438\"\u003e#3438\u003c/a\u003e) by \u003ca href=\"https://github.com/xnox\"\u003e\u003ccode\u003e@​xnox\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eGuard empty input to prevent IndexError (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3448\"\u003e#3448\u003c/a\u003e) by \u003ca href=\"https://github.com/KyleJung0828\"\u003e\u003ccode\u003e@​KyleJung0828\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix type hint for XMP metadata setter to add bytes type (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3464\"\u003e#3464\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.0.0...6.1.0\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.1.1, 2025-09-28\u003c/h2\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eInsert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation (DOC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDocument AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.1.0...6.1.1\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.1.0, 2025-09-21\u003c/h2\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd all font metrics for base 14 Type 1 PDF fonts (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3363\"\u003e#3363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow deleting embedded files (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3461\"\u003e#3461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support for Python in FIPS mode for document identifier (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3438\"\u003e#3438\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes (BUG)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eGuard empty input to prevent IndexError (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3448\"\u003e#3448\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix type hint for XMP metadata setter to add bytes type (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3464\"\u003e#3464\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/6.0.0...6.1.0\"\u003eFull Changelog\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\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/py-pdf/pypdf/commit/9cb878c3f90a665a59e442d3c09da7b7b2a88af6\"\u003e\u003ccode\u003e9cb878c\u003c/code\u003e\u003c/a\u003e REL: 6.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/5848de32442033f03ad2c39bf3788f2853063268\"\u003e\u003ccode\u003e5848de3\u003c/code\u003e\u003c/a\u003e DOC: Document AFRelationship handling for PDF/A and provide constants (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3478\"\u003e#3478\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/322d810faa305f48c4cc487ea57534d87e0d0508\"\u003e\u003ccode\u003e322d810\u003c/code\u003e\u003c/a\u003e STY: Use removeprefix (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3469\"\u003e#3469\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/506a1102a78eda2c2c32fc424c01fc73d8f5ad0a\"\u003e\u003ccode\u003e506a110\u003c/code\u003e\u003c/a\u003e BUG: Insert new embedded files in a sorted manner (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3477\"\u003e#3477\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1bb97b9aff4669dffdd87d20c86d9f8a3dc012f1\"\u003e\u003ccode\u003e1bb97b9\u003c/code\u003e\u003c/a\u003e MAINT: Correct two misspellings (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3476\"\u003e#3476\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/e3a16d46ceeb62050393e33452a764bffa62b516\"\u003e\u003ccode\u003ee3a16d4\u003c/code\u003e\u003c/a\u003e BUG: Fix name tree handling for embedded files with Kids-based inputs (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3475\"\u003e#3475\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/5c5b3bdd0d196add4c8608308d9c6e6a6f96f0d5\"\u003e\u003ccode\u003e5c5b3bd\u003c/code\u003e\u003c/a\u003e BUG: Make embedding files not break PDF/A-3 compliance (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3472\"\u003e#3472\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/d40f3596872e1d4e0d53da61a29015fc84816f21\"\u003e\u003ccode\u003ed40f359\u003c/code\u003e\u003c/a\u003e REL: 6.1.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/27b66aa7a0c4f4a69d5accabbc650d25af84cb27\"\u003e\u003ccode\u003e27b66aa\u003c/code\u003e\u003c/a\u003e ENH: Enhance XMP metadata handling with creation and setter methods (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3410\"\u003e#3410\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b6fff56b51febd61727e5fbb1384c7b8ab9fd3f8\"\u003e\u003ccode\u003eb6fff56\u003c/code\u003e\u003c/a\u003e BUG: Fix handling of UTF-16 encoded destination titles (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3463\"\u003e#3463\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.1.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rapidfuzz` from 3.13.0 to 3.14.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/releases\"\u003erapidfuzz's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.14.1\u003c/h2\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFully disable line tracing in release builds\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.14.0\u003c/h2\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for freethreaded Python\u003c/li\u003e\n\u003cli\u003eadd python 3.14 wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eremove unused hook-dirs from pyinstaller config to fix a warning\u003c/li\u003e\n\u003cli\u003efixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003c/ul\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/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst\"\u003erapidfuzz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cp\u003e[3.14.1] - 2025-09-08\n^^^^^^^^^^^^^^^^^^^^^\nFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* Fully disable line tracing in release builds\n\u003cp\u003e[3.14.0] - 2025-08-27\n^^^^^^^^^^^^^^^^^^^^^\nChanged\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3.\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* add support for freethreaded Python\n* add python 3.14 wheels\n\u003cp\u003eRemoved\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* remove unused hook-dirs from pyinstaller config to fix a warning\n* fixed WRatio for a length ratio of exactly 8.0\n\u003cp\u003e[3.13.0] - 2025-04-03\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for arrays of type 'w'\u003c/li\u003e\n\u003cli\u003eadd support for any DTypeLike as dtype in \u003ccode\u003ecdist\u003c/code\u003e and \u003ccode\u003ecpdist\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eChanged\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* upgrade to ``rapidfuzz-cpp==3.3.2``\n\u003cp\u003e[3.12.2] - 2025-03-02\n^^^^^^^^^^^^^^^^^^^^^\nAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* added wheels for pypy 3.11\n\nChanged\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;!-- raw HTML omitted --\u0026gt;\n\u0026lt;/blockquote\u0026gt;\n\u0026lt;p\u0026gt;... (truncated)\u0026lt;/p\u0026gt;\n\u0026lt;/details\u0026gt;\n\u0026lt;details\u0026gt;\n\u0026lt;summary\u0026gt;Commits\u0026lt;/summary\u0026gt;\n\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/5a1c243a5e5b05e73171b0c84566ce0c8f26448a\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5a1c243\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; remove outdated config\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/83048ebaeebd746f5bbe47826c0839950e38bf1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;83048eb\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; apply pre-commit\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/bdd210abcc12bd8a4bc2dff76dc80c3b6ed2e034\u0026quot;\u0026gt;\u0026lt;code\u0026gt;bdd210a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Remove Cython generation step from coverage workflow\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/5794199cd29b1c3b12adf0ad2b8da795d86dc807\u0026quot;\u0026gt;\u0026lt;code\u0026gt;5794199\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fully disable line tracing\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/2fa2e539ef831105022627b0d0f5ad27cf5a0511\u0026quot;\u0026gt;\u0026lt;code\u0026gt;2fa2e53\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; run more tests on arm systems\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/da7e03b0a1245551f67b80ded636c5a440df8225\u0026quot;\u0026gt;\u0026lt;code\u0026gt;da7e03b\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; tag version\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/4d1a90d256db2fd833b94eedc436c38498f6e3af\u0026quot;\u0026gt;\u0026lt;code\u0026gt;4d1a90d\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; drop python 3.9\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/a79f3a28dc2ed32b1a6f1eb60f87f2b7b9f66cc2\u0026quot;\u0026gt;\u0026lt;code\u0026gt;a79f3a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; improve build scripting\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/9fb6a3e46be9c8266f97e096655c580af0323514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;9fb6a3e\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pypy is now built as part of the other builds\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/commit/aab2d9c562ffb977d520c2a9bcb2193a5476c543\u0026quot;\u0026gt;\u0026lt;code\u0026gt;aab2d9c\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; fix type hint tests\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/rapidfuzz/RapidFuzz/compare/v3.13.0...v3.14.1\u0026quot;\u0026gt;compare view\u0026lt;/a\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;/details\u0026gt;\n\n\u0026lt;br /\u0026gt;\n\u003c/code\u003e\u003c/pre\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.1.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate docs discussions channel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd python 3.14 classifier and badge (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop use of non-standard pkg_resources API (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e) \u003ca href=\"https://github.com/dvarrazzo\"\u003e\u003ccode\u003e@​dvarrazzo\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse working isort version in pre-commit example (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2402\"\u003e#2402\u003c/a\u003e) \u003ca href=\"https://github.com/iainelder\"\u003e\u003ccode\u003e@​iainelder\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix typo in _get_files_from_dir_cached test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2392\"\u003e#2392\u003c/a\u003e) \u003ca href=\"https://github.com/tiltingpenguin\"\u003e\u003ccode\u003e@​tiltingpenguin\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eResolve bandit warnings (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2379\"\u003e#2379\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd tox for cross-platform, parallel test suite execution (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2378\"\u003e#2378\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd Project URLs to PyPI Side Panel (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2387\"\u003e#2387\u003c/a\u003e) \u003ca href=\"https://github.com/guillermodotn\"\u003e\u003ccode\u003e@​guillermodotn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typos (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2376\"\u003e#2376\u003c/a\u003e) \u003ca href=\"https://github.com/co63oc\"\u003e\u003ccode\u003e@​co63oc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd make bash scripts portable (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2377\"\u003e#2377\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 4 to 5 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump astral-sh/setup-uv from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2395\"\u003e#2395\u003c/a\u003e) @\u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/ec0efaee4acfce198521e43caa3029b06cedd64a\"\u003e\u003ccode\u003eec0efae\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2410\"\u003e#2410\u003c/a\u003e from PyCQA/docs/discussion\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8af675ffcbb25dc5b5c2ff52863afc2923a818e2\"\u003e\u003ccode\u003e8af675f\u003c/code\u003e\u003c/a\u003e Update docs discussions channel\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/a03dae897f7e4a2b2eeb01d094b2c112b10ff0b7\"\u003e\u003ccode\u003ea03dae8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2409\"\u003e#2409\u003c/a\u003e from PyCQA/build/py314-classifier\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/2232a26fd15d43ad0fca0e662d311ca4cf0d161e\"\u003e\u003ccode\u003e2232a26\u003c/code\u003e\u003c/a\u003e Add python 3.14 classifier and badge\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ec48dd7c823bcebf6da93db5eb4921a7808e6bb3\"\u003e\u003ccode\u003eec48dd7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2405\"\u003e#2405\u003c/a\u003e from dvarrazzo/fix/drop-pkg-resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/be46cd476d1a61996a6a4469177edf0869df531e\"\u003e\u003ccode\u003ebe46cd4\u003c/code\u003e\u003c/a\u003e refactor: make importlib metadata package import lazy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/18ecd0c3bf0bc7d6eb9bb5b9a72297f172a57663\"\u003e\u003ccode\u003e18ecd0c\u003c/code\u003e\u003c/a\u003e chore: drop branch guarding unsupported Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1d42e564d9bd1e026e8d635880336dd0528c2c29\"\u003e\u003ccode\u003e1d42e56\u003c/code\u003e\u003c/a\u003e fix: drop use of non-standard pkg_resources API\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0c8fc82fdf1b60065d447f3f7307f01c51d44b01\"\u003e\u003ccode\u003e0c8fc82\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2406\"\u003e#2406\u003c/a\u003e from PyCQA/dependabot/github_actions/github-actions-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3478763347707341e3ce729008acc9cf73a0ff35\"\u003e\u003ccode\u003e3478763\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 in the github-actions group\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.13.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.13.2\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-09-25.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-path-method\u003c/code\u003e (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20264\"\u003e#20264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003emap-without-explicit-strict\u003c/code\u003e (\u003ccode\u003eB912\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20429\"\u003e#20429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bultins\u003c/code\u003e] Detect class-scope builtin shadowing in decorators, default args, and attribute initializers (\u003ccode\u003eA003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20178\"\u003e#20178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Implement \u003ccode\u003elogging-eager-conversion\u003c/code\u003e (\u003ccode\u003eRUF065\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19942\"\u003e#19942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003e.pyw\u003c/code\u003e files by default when linting and formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20458\"\u003e#20458\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeduplicate input paths (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20105\"\u003e#20105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Preserve trailing commas for single-element lists (\u003ccode\u003eC409\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19571\"\u003e#19571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Avoid syntax error from conflict with \u003ccode\u003ePIE790\u003c/code\u003e (\u003ccode\u003ePYI021\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20010\"\u003e#20010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Correct fix for positive \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20056\"\u003e#20056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix \u003ccode\u003eUP008\u003c/code\u003e not to apply when \u003ccode\u003e__class__\u003c/code\u003e is a local variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20497\"\u003e#20497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix \u003ccode\u003eB004\u003c/code\u003e to skip invalid \u003ccode\u003ehasattr\u003c/code\u003e/\u003ccode\u003egetattr\u003c/code\u003e calls (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20486\"\u003e#20486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Replace \u003ccode\u003e-nan\u003c/code\u003e with \u003ccode\u003enan\u003c/code\u003e when using the value to construct a \u003ccode\u003eDecimal\u003c/code\u003e (\u003ccode\u003eFURB164\u003c/code\u003e ) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20391\"\u003e#20391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate import path to \u003ccode\u003eruff-wasm-web\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20539\"\u003e#20539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Clarify the supported hashing functions (\u003ccode\u003eS324\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20534\"\u003e#20534\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Allow hover quick fixes to appear for overlapping diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20527\"\u003e#20527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Fix non‑BMP code point handling in quick fixes and markers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20526\"\u003e#20526\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/second-ed\"\u003e\u003ccode\u003e@​second-ed\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ShikChen\"\u003e\u003ccode\u003e@​ShikChen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PieterCK\"\u003e\u003ccode\u003e@​PieterCK\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/GDYendell\"\u003e\u003ccode\u003e@​GDYendell\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntbre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eInstall ruff 0.13.2\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.13.2\u003c/h2\u003e\n\u003cp\u003eReleased on 2025-09-25.\u003c/p\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-path-method\u003c/code\u003e (\u003ccode\u003eASYNC240\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20264\"\u003e#20264\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bugbear\u003c/code\u003e] Implement \u003ccode\u003emap-without-explicit-strict\u003c/code\u003e (\u003ccode\u003eB912\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20429\"\u003e#20429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bultins\u003c/code\u003e] Detect class-scope builtin shadowing in decorators, default args, and attribute initializers (\u003ccode\u003eA003\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20178\"\u003e#20178\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Implement \u003ccode\u003elogging-eager-conversion\u003c/code\u003e (\u003ccode\u003eRUF065\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19942\"\u003e#19942\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eInclude \u003ccode\u003e.pyw\u003c/code\u003e files by default when linting and formatting (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20458\"\u003e#20458\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDeduplicate input paths (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20105\"\u003e#20105\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Preserve trailing commas for single-element lists (\u003ccode\u003eC409\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19571\"\u003e#19571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-pyi\u003c/code\u003e] Avoid syntax error from conflict with \u003ccode\u003ePIE790\u003c/code\u003e (\u003ccode\u003ePYI021\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20010\"\u003e#20010\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Correct fix for positive \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20056\"\u003e#20056\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Fix \u003ccode\u003eUP008\u003c/code\u003e not to apply when \u003ccode\u003e__class__\u003c/code\u003e is a local variable (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20497\"\u003e#20497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix \u003ccode\u003eB004\u003c/code\u003e to skip invalid \u003ccode\u003ehasattr\u003c/code\u003e/\u003ccode\u003egetattr\u003c/code\u003e calls (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20486\"\u003e#20486\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Replace \u003ccode\u003e-nan\u003c/code\u003e with \u003ccode\u003enan\u003c/code\u003e when using the value to construct a \u003ccode\u003eDecimal\u003c/code\u003e (\u003ccode\u003eFURB164\u003c/code\u003e ) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20391\"\u003e#20391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate import path to \u003ccode\u003eruff-wasm-web\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20539\"\u003e#20539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-bandit\u003c/code\u003e] Clarify the supported hashing functions (\u003ccode\u003eS324\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20534\"\u003e#20534\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Allow hover quick fixes to appear for overlapping diagnostics (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20527\"\u003e#20527\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eplayground\u003c/code\u003e] Fix non‑BMP code point handling in quick fixes and markers (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20526\"\u003e#20526\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eContributors\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/second-ed\"\u003e\u003ccode\u003e@​second-ed\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ShikChen\"\u003e\u003ccode\u003e@​ShikChen\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PieterCK\"\u003e\u003ccode\u003e@​PieterCK\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/GDYendell\"\u003e\u003ccode\u003e@​GDYendell\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntbre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.13.1\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/astral-sh/ruff/commit/b0bdf0334e38417f8617057cd0392a4b53954120\"\u003e\u003ccode\u003eb0bdf03\u003c/code\u003e\u003c/a\u003e Bump 0.13.2 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20576\"\u003e#20576\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/7331d393c555ece88aa69f685562163790ddf611\"\u003e\u003ccode\u003e7331d39\u003c/code\u003e\u003c/a\u003e Update rooster to 0.1.0 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20575\"\u003e#20575\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/529e5fa6c24ea68501adb18245eab27c701598d2\"\u003e\u003ccode\u003e529e5fa\u003c/code\u003e\u003c/a\u003e [ty] Ecosystem analyzer: timing report (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20571\"\u003e#20571\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/efbb80f7475c63b62981444d5c429109ff12ad32\"\u003e\u003ccode\u003eefbb80f\u003c/code\u003e\u003c/a\u003e [ty] Remove hack in protocol satisfiability check (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20568\"\u003e#20568\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9f3cffc65cb834661e17263245761a66f9474af0\"\u003e\u003ccode\u003e9f3cffc\u003c/code\u003e\u003c/a\u003e Add 'Finding ways to help' to CONTRIBUTING.md (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20567\"\u003e#20567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/21be94ac33f445d8a681babec6c56ca3d1b67156\"\u003e\u003ccode\u003e21be94a\u003c/code\u003e\u003c/a\u003e [ty] Explicitly test assignability/subtyping between unions of nominal types ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/b7d5dc98c193cc5cab00d557b6a392d35137d990\"\u003e\u003ccode\u003eb7d5dc9\u003c/code\u003e\u003c/a\u003e [ty] Add tests for interactions of \u003ccode\u003e@classmethod\u003c/code\u003e, \u003ccode\u003e@staticmethod\u003c/code\u003e, and proto...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e1bb74b25a0f730a5baff263d753ffe03cf857b1\"\u003e\u003ccode\u003ee1bb74b\u003c/code\u003e\u003c/a\u003e [ty] Match variadic argument to variadic parameter (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20511\"\u003e#20511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/edeb45804ef9dbe348d393f3ab77288062a3c77e\"\u003e\u003ccode\u003eedeb458\u003c/code\u003e\u003c/a\u003e [ty] fallback to resolve_real_module in file_to_module (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20461\"\u003e#20461\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/bea92c822980b1575d58542dffa2c960393d7603\"\u003e\u003ccode\u003ebea92c8\u003c/code\u003e\u003c/a\u003e [ty] More precise type inference for dictionary literals (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20523\"\u003e#20523\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.13.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 to 7.0.0\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\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/20","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/20","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/20/packages"}},{"old_version":"0.1.8","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-10-01T05:04:59.000Z","version_change":"0.1.8 → 0.3.0","issue":{"uuid":"3472030686","node_id":"PR_kwDOGE74Bs6reYWC","number":25,"state":"open","title":"chore(deps-dev): bump the development-dependencies group across 1 directory with 13 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-10-01T05:04:59.000Z","updated_at":"2025-10-01T05:05:01.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev): bump","group_name":"development-dependencies","update_count":13,"packages":[{"name":"pre-commit","old_version":"4.1.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"setuptools","old_version":"75.8.0","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"coverage","old_version":"7.6.12","new_version":"7.10.7","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"deepdiff","old_version":"8.2.0","new_version":"8.6.1","repository_url":"https://github.com/seperman/deepdiff"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.0.20241016","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 13 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.1.0` | `4.3.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `75.8.0` | `80.9.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.12` | `7.10.7` |\n| [deepdiff](https://github.com/seperman/deepdiff) | `8.2.0` | `8.6.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.5.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20241016` | `2.32.4.20250913` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.3.0` |\n\n\nUpdates `pre-commit` from 4.1.0 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.1.0...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 75.8.0 to 80.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev80.9.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet a deadline for the removal of pkg_resources later this year (December). (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved reliance on pkg_resources in test_wheel. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.8.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplaced more references to pkg_resources with importlib equivalents in wheel odule. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRestore explicit LICENSE file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5001\"\u003e#5001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved no longer used build dependency on \u003ccode\u003ecoherent.licensed\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly attempt to fetch eggs for unsatisfied requirements. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIn installer, when discovering egg dists, let metadata discovery search each egg. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved usage of pkg_resources from installer. Set an official deadline on the installer deprecation to 2025-10-31. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4997\"\u003e#4997\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4996\"\u003e#4996\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.6.0\u003c/h1\u003e\n\u003cp\u003eFeatures\u003c/p\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/pypa/setuptools/commit/9c4d383631d3951fcae0afd73b5d08ff5a262976\"\u003e\u003ccode\u003e9c4d383\u003c/code\u003e\u003c/a\u003e Bump version: 80.8.0 → 80.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/05cb3c84f1422f3b26ccfb00f4c43886dc55b9bc\"\u003e\u003ccode\u003e05cb3c8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5014\"\u003e#5014\u003c/a\u003e from pypa/debt/pkg_resources-deadline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3b0bf5bd43034c448a10e7102788fe710b4bb496\"\u003e\u003ccode\u003e3b0bf5b\u003c/code\u003e\u003c/a\u003e Adjust ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/9c28cdffd423f83e43dbfd39fc793c251da48585\"\u003e\u003ccode\u003e9c28cdf\u003c/code\u003e\u003c/a\u003e Set a deadline for the removal of pkg_resources later this year (December).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/a3bfef95193bf0ff78ef6e0fb8c63a3728f443b0\"\u003e\u003ccode\u003ea3bfef9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5013\"\u003e#5013\u003c/a\u003e from DimitriPapadopoulos/ISC\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/64bf9d0ce88a09748f702bd7736d9ec2879aa6ef\"\u003e\u003ccode\u003e64bf9d0\u003c/code\u003e\u003c/a\u003e Enforce ruff/flake8-implicit-str-concat rules (ISC)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3250c25197b299658cfd4d0db67770fc29b47277\"\u003e\u003ccode\u003e3250c25\u003c/code\u003e\u003c/a\u003e Fix broken link in docs (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4947\"\u003e#4947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5ccf50e01ab0d303f524c065f2cb51042b34bc55\"\u003e\u003ccode\u003e5ccf50e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5006\"\u003e#5006\u003c/a\u003e from pypa/feature/remove-more-pkg_resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/134e587c0ba0b59e1661f08a45e6d6d1ecd24329\"\u003e\u003ccode\u003e134e587\u003c/code\u003e\u003c/a\u003e Suppress nitpicky typecheck in pyright.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/0bf2663a19f2d947697997d125c3c880df2011b7\"\u003e\u003ccode\u003e0bf2663\u003c/code\u003e\u003c/a\u003e Add news fragment.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v75.8.0...v80.9.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.6.12 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1921\"\u003enedbat/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003enedbat/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\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/nedbat/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.12...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.2.0 to 8.6.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/seperman/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.6.1\u003c/h2\u003e\n\u003cp\u003eDeepDiff 8-6-1\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePatched security vulnerability in the Delta class which was vulnerable to class pollution via its constructor, and when combined with a gadget available in DeltaDiff itself, it could lead to Denial of Service and Remote Code Execution (via insecure Pickle deserialization).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdating deprecated pydantic calls\u003c/li\u003e\n\u003cli\u003eSwitching to pyproject.toml\u003c/li\u003e\n\u003cli\u003eFix for moving nested tables when using iterable_compare_func.  by\u003c/li\u003e\n\u003cli\u003eFix recursion depth limit when hashing numpy.datetime64\u003c/li\u003e\n\u003cli\u003eMoving from legacy setuptools use to pyproject.toml\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003epytz is not required.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.4.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdding BaseOperatorPlus base class for custom operators\u003c/li\u003e\n\u003cli\u003edefault_timezone can be passed now to set your default timezone to something other than UTC.\u003c/li\u003e\n\u003cli\u003eNew summarization algorithm that produces valid json\u003c/li\u003e\n\u003cli\u003eBetter type hint support\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/seperman/deepdiff/commit/60ac5b903dbd662e0e83bf7b481df97d42f693df\"\u003e\u003ccode\u003e60ac5b9\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/683756ef03064047744dbf4978ca27d2211a846f\"\u003e\u003ccode\u003e683756e\u003c/code\u003e\u003c/a\u003e Bump version: 8.6.0 → 8.6.1 and add security vulnerability notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/c69c06c13f75e849c770ade3f556cd16209fd183\"\u003e\u003ccode\u003ec69c06c\u003c/code\u003e\u003c/a\u003e Security fix: Prevent class pollution and remote code execution in Delta\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/b639fece73fe3ce4120261fdcff3cc7b826776e3\"\u003e\u003ccode\u003eb639fec\u003c/code\u003e\u003c/a\u003e updating the docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/6f3d5eeb81083c816cf1a4f9eff3f1de2150a96a\"\u003e\u003ccode\u003e6f3d5ee\u003c/code\u003e\u003c/a\u003e Bump version: 8.5.0 → 8.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/388a60ecd1c033de3f2302ade67e386a8875b6be\"\u003e\u003ccode\u003e388a60e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/seperman/deepdiff/issues/557\"\u003e#557\u003c/a\u003e from seperman/dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/0978fb88240b0d3daaf327d26b7fbcf85360578c\"\u003e\u003ccode\u003e0978fb8\u003c/code\u003e\u003c/a\u003e adding docs for 8.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/d469a4c34c6b65cab25088b0d3963561b80acf9b\"\u003e\u003ccode\u003ed469a4c\u003c/code\u003e\u003c/a\u003e making type hints compatible with old python\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/e16507c15c9069e9011ba4e298a2ec031c68cd3f\"\u003e\u003ccode\u003ee16507c\u003c/code\u003e\u003c/a\u003e fixing type hints\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/seperman/deepdiff/commit/33de0874bbc356ae83e74157f105a516e4db3d7a\"\u003e\u003ccode\u003e33de087\u003c/code\u003e\u003c/a\u003e adding type hints to search\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/seperman/deepdiff/compare/8.2.0...8.6.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.4 to 8.4.2\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.2\u003c/h2\u003e\n\u003ch1\u003epytest 8.4.2 (2025-09-03)\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/13478\"\u003e#13478\u003c/a\u003e: Fixed a crash when using \u003ccode\u003econsole_output_style\u003c/code\u003e{.interpreted-text role=\u0026quot;confval\u0026quot;} with \u003ccode\u003etimes\u003c/code\u003e and a module is skipped.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13530\"\u003e#13530\u003c/a\u003e: Fixed a crash when using \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} and \u003ccode\u003edecimal.Decimal\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} instances with the \u003ccode\u003edecimal.FloatOperation\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} trap set.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13549\"\u003e#13549\u003c/a\u003e: No longer evaluate type annotations in Python \u003ccode\u003e3.14\u003c/code\u003e when inspecting function signatures.\u003c/p\u003e\n\u003cp\u003eThis prevents crashes during module collection when modules do not explicitly use \u003ccode\u003efrom __future__ import annotations\u003c/code\u003e and import types for annotations within a \u003ccode\u003eif TYPE_CHECKING:\u003c/code\u003e block.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13559\"\u003e#13559\u003c/a\u003e: Added missing [int]{.title-ref} and [float]{.title-ref} variants to the [Literal]{.title-ref} type annotation of the [type]{.title-ref} parameter in \u003ccode\u003epytest.Parser.addini\u003c/code\u003e{.interpreted-text role=\u0026quot;meth\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13563\"\u003e#13563\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now only imports \u003ccode\u003enumpy\u003c/code\u003e if NumPy is already in \u003ccode\u003esys.modules\u003c/code\u003e. This fixes unconditional import behavior introduced in [8.4.0]{.title-ref}.\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/13577\"\u003e#13577\u003c/a\u003e: Clarify that \u003ccode\u003epytest_generate_tests\u003c/code\u003e is discovered in test modules/classes; other hooks must be in \u003ccode\u003econftest.py\u003c/code\u003e or plugins.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributor-facing changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13480\"\u003e#13480\u003c/a\u003e: Self-testing: fixed a few test failures when run with \u003ccode\u003e-Wdefault\u003c/code\u003e or a similar override.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13547\"\u003e#13547\u003c/a\u003e: Self-testing: corrected expected message for \u003ccode\u003etest_doctest_unexpected_exception\u003c/code\u003e in Python \u003ccode\u003e3.14\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13684\"\u003e#13684\u003c/a\u003e: Make pytest's own testsuite insensitive to the presence of the \u003ccode\u003eCI\u003c/code\u003e environment variable -- by \u003ccode\u003eogrisel\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\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\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/bfae4224fd554d3d7f2c277a4cc092b6ec6af3ae\"\u003e\u003ccode\u003ebfae422\u003c/code\u003e\u003c/a\u003e Prepare release version 8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/89905381a163be30ae87d62e5f750e902d750c5f\"\u003e\u003ccode\u003e8990538\u003c/code\u003e\u003c/a\u003e Fix passenv CI in tox ini and make tests insensitive to the presence of the C...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/ca676bfe005aebcb12f4146d1b0f1d2772e2cd5d\"\u003e\u003ccode\u003eca676bf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13687\"\u003e#13687\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/e63f6e51c...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/975a60a63ce385a44655596e254c1899feaa53e4\"\u003e\u003ccode\u003e975a60a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13686\"\u003e#13686\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/12bde8af6...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/7723ce84b87ab08f86ddafcb342acc28ba5ec99d\"\u003e\u003ccode\u003e7723ce8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13683\"\u003e#13683\u003c/a\u003e from even-even/fix_Exeption_to_Exception_in_errorMe...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b7f05680d1301e0969b30bcb3c4b27433c9ee2b7\"\u003e\u003ccode\u003eb7f0568\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13685\"\u003e#13685\u003c/a\u003e from CoretexShadow/fix/docs-pytest-generate-tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2c94c4a6948ba53440818389298157fa5d5f94cd\"\u003e\u003ccode\u003e2c94c4a\u003c/code\u003e\u003c/a\u003e add missing colon (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13640\"\u003e#13640\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13641\"\u003e#13641\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/c3d7684bc01c8c48d05145a30c5211ca8656c68c\"\u003e\u003ccode\u003ec3d7684\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13606\"\u003e#13606\u003c/a\u003e from pytest-dev/patchback/backports/8.4.x/5f9938563...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/dc6e3be2ddc75a149b6d102d9b7c82ee47a00cfa\"\u003e\u003ccode\u003edc6e3be\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13605\"\u003e#13605\u003c/a\u003e from The-Compiler/training-update-2025-07\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/f87289c36c8dbe7740e3020f5546b6f8b0861ff0\"\u003e\u003ccode\u003ef87289c\u003c/code\u003e\u003c/a\u003e Fix crash with \u003ccode\u003etimes\u003c/code\u003e output style and skipped module (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13573\"\u003e#13573\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13579\"\u003e#13579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/8.3.4...8.4.2\"\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.0.0 to 7.0.0\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\u003e7.0.0 (2025-09-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eDropped support for subprocesses measurement.\u003c/p\u003e\n\u003cp\u003eIt was a feature added long time ago when coverage lacked a nice way to measure subprocesses created in tests.\nIt relied on a \u003ccode\u003e.pth\u003c/code\u003e file, there was no way to opt-out and it created bad interations\nwith \u003ccode\u003ecoverage's new patch system \u0026lt;https://coverage.readthedocs.io/en/latest/config.html#run-patch\u0026gt;\u003c/code\u003e_ added\nin \u003ccode\u003e7.10 \u0026lt;https://coverage.readthedocs.io/en/7.10.6/changes.html#version-7-10-0-2025-07-24\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003eTo migrate to this release you might need to enable the suprocess patch, example for \u003ccode\u003e.coveragerc\u003c/code\u003e:\u003c/p\u003e\n\u003cp\u003e.. code-block:: ini\u003c/p\u003e\n\u003cp\u003e[run]\npatch = subprocess\u003c/p\u003e\n\u003cp\u003eThis release also requires at least coverage 7.10.6.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eSwitched packaging to have metadata completely in \u003ccode\u003epyproject.toml\u003c/code\u003e and use \u003ccode\u003ehatchling \u0026lt;https://pypi.org/project/hatchling/\u0026gt;\u003c/code\u003e_ for\nbuilding.\nContributed by Ofek Lev in \u003ccode\u003e[#551](https://github.com/pytest-dev/pytest-cov/issues/551) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/551\u0026gt;\u003c/code\u003e_\nwith some extras in \u003ccode\u003e[#716](https://github.com/pytest-dev/pytest-cov/issues/716) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/716\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eRemoved some not really necessary testing deps like \u003ccode\u003esix\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.3.0 (2025-09-06)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for markdown reports.\nContributed by Marcos Boger in \u003ccode\u003e[#712](https://github.com/pytest-dev/pytest-cov/issues/712) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/712\u0026gt;\u003c/code\u003e_\nand \u003ccode\u003e[#714](https://github.com/pytest-dev/pytest-cov/issues/714) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/714\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed some formatting issues in docs.\nAnonymous contribution in \u003ccode\u003e[#706](https://github.com/pytest-dev/pytest-cov/issues/706) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/706\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\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\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-cov/commit/224d8964caad90074a8cf6dc8720b8f70f31629b\"\u003e\u003ccode\u003e224d896\u003c/code\u003e\u003c/a\u003e Bump version: 6.3.0 → 7.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/73424e3999f865eac72e27f09d5fe11b9703cfd6\"\u003e\u003ccode\u003e73424e3\u003c/code\u003e\u003c/a\u003e Cleanup the docs a bit.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/36f1cc2967831dbd4c8aa70086fc86dc495f8b9a\"\u003e\u003ccode\u003e36f1cc2\u003c/code\u003e\u003c/a\u003e Bump pins in template.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/f299c590a63a48e51e3ae949993dc7bb1f1d480d\"\u003e\u003ccode\u003ef299c59\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/25f0b2e0cdbc345c0d3e49170f7a328c3e0d805f\"\u003e\u003ccode\u003e25f0b2e\u003c/code\u003e\u003c/a\u003e Update docs/config.rst\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/bb23eacc5531fb8f499213d8420407e0d72f88e3\"\u003e\u003ccode\u003ebb23eac\u003c/code\u003e\u003c/a\u003e Improve configuration docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/a19531e91e1ab753ccf648a2d9bab08a6fddebb9\"\u003e\u003ccode\u003ea19531e\u003c/code\u003e\u003c/a\u003e Switch from build/pre-commit to uv/prek - this should make this faster.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/82f999391073f2fb8ae422af452602f310086a2a\"\u003e\u003ccode\u003e82f9993\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/211b5cd41c29916bc643b4a11b00578ba4fd6fe8\"\u003e\u003ccode\u003e211b5cd\u003c/code\u003e\u003c/a\u003e Fix links.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/97aadd74bcbc00a2078d240e8fe871dd62b83d80\"\u003e\u003ccode\u003e97aadd7\u003c/code\u003e\u003c/a\u003e Update some ci config, reformat and apply some lint fixes.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v6.0.0...v7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.14.0 to 3.15.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/529\"\u003e#529\u003c/a\u003e: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/524\"\u003e#524\u003c/a\u003e: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\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/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.15.1\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-16\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#529](https://github.com/pytest-dev/pytest-mock/issues/529) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/529\u0026gt;\u003c/code\u003e_: Fixed \u003ccode\u003eitertools._tee object has no attribute error\u003c/code\u003e -- now \u003ccode\u003eduplicate_iterators=True\u003c/code\u003e must be passed to \u003ccode\u003emocker.spy\u003c/code\u003e to duplicate iterators.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.15.0\u003c/h2\u003e\n\u003cp\u003e\u003cem\u003e2025-09-04\u003c/em\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.8 (EOL) is no longer supported.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#524](https://github.com/pytest-dev/pytest-mock/issues/524) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/524\u0026gt;\u003c/code\u003e_: Added \u003ccode\u003espy_return_iter\u003c/code\u003e to \u003ccode\u003emocker.spy\u003c/code\u003e, which contains a duplicate of the return value of the spied method if it is an \u003ccode\u003eIterator\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\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-mock/commit/e1b5c62a38c5a05cae614aef3847f240ba50d269\"\u003e\u003ccode\u003ee1b5c62\u003c/code\u003e\u003c/a\u003e Release 3.15.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/184eb190d6be417f5f33727bcbc9704909479498\"\u003e\u003ccode\u003e184eb19\u003c/code\u003e\u003c/a\u003e Set \u003ccode\u003espy_return_iter\u003c/code\u003e only when explicitly requested (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/537\"\u003e#537\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/4fa0088a0aa85eefb1313bd97adf43889bf1f647\"\u003e\u003ccode\u003e4fa0088\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5aff33ce71ed4620acc43dc41cb3b198bcf4cb0\"\u003e\u003ccode\u003ef5aff33\u003c/code\u003e\u003c/a\u003e Fix test failure with pytest 8+ and verbose mode (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/535\"\u003e#535\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/adc41873c9d6aa69b87e3f108c93a29c847869aa\"\u003e\u003ccode\u003eadc4187\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/533\"\u003e#533\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/95ad5700609aae73c6f767b8cc2ccfb2483e0f5c\"\u003e\u003ccode\u003e95ad570\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/532\"\u003e#532\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/e696bf02c199b1f7d0c48adb450f40e5a75b699a\"\u003e\u003ccode\u003ee696bf0\u003c/code\u003e\u003c/a\u003e Fix standalone mock support (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/531\"\u003e#531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/5b29b03ce9581cfcd867dd6c04a970fb2c861291\"\u003e\u003ccode\u003e5b29b03\u003c/code\u003e\u003c/a\u003e Fix gen-release-notes script\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7d22ef4e560351832e60687d8bd15ebe2785ff3b\"\u003e\u003ccode\u003e7d22ef4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/528\"\u003e#528\u003c/a\u003e from pytest-dev/release-3.15.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/90b29f89e2086c139a7b4fea89202faa192ee5a9\"\u003e\u003ccode\u003e90b29f8\u003c/code\u003e\u003c/a\u003e Update CHANGELOG for 3.15.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-randomly` from 3.16.0 to 4.0.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/blob/main/CHANGELOG.rst\"\u003epytest-randomly's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.0.1 (2025-09-12)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eRemove the random state caching, which would grow without bound, leaking memory in long test runs.\nThe caching was added to slightly speed up re-using the same (final) seed, but since the final seed is now different for each test, it has no effect.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#690](https://github.com/pytest-dev/pytest-randomly/issues/690) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/687\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eModify Numpy seed restriction, replacing hashing with a modulo operation.\nThe extra work to hash is unnecessary now that we generate a final seed per test with CRC32.\nThis change saves ~500ns per test when Numpy is installed.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#691](https://github.com/pytest-dev/pytest-randomly/issues/691) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/691\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.0.0 (2025-09-10)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSupport Python 3.14.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUse a different random seed per test, based on the test ID.\u003c/p\u003e\n\u003cp\u003eThis change should mean that tests exercise more random data values in a given run, and that any randomly-generated identifiers have a lower chance of collision when stored in a shared resource like a database.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003ePR [#687](https://github.com/pytest-dev/pytest-randomly/issues/687) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/687\u0026gt;\u003c/code\u003e\u003cstrong\u003e.\nThanks to Bryce Drennan for the suggestion in \u003ccode\u003eIssue [#600](https://github.com/pytest-dev/pytest-randomly/issues/600) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/600\u0026gt;\u003c/code\u003e\u003c/strong\u003e and initial implementation in \u003ccode\u003ePR [#617](https://github.com/pytest-dev/pytest-randomly/issues/617) \u0026lt;https://github.com/pytest-dev/pytest-randomly/pull/617\u0026gt;\u003c/code\u003e__.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove from MD5 to CRC32 for hashing test IDs, as it’s 5x faster and we don’t need cryptographic security.\u003c/p\u003e\n\u003cp\u003e\u003ccode\u003eIssue [#686](https://github.com/pytest-dev/pytest-randomly/issues/686) \u0026lt;https://github.com/pytest-dev/pytest-randomly/issues/686\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/pytest-dev/pytest-randomly/commit/50de0961ad3479901a153a4a89ff58ca7898b550\"\u003e\u003ccode\u003e50de096\u003c/code\u003e\u003c/a\u003e Version 4.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/f9406ec4452d05a865ee67b83fed58bc8f914bac\"\u003e\u003ccode\u003ef9406ec\u003c/code\u003e\u003c/a\u003e Modify Numpy seed restriction (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/691\"\u003e#691\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/22049aabcd1e19012c878dccd5fb1ad728221331\"\u003e\u003ccode\u003e22049aa\u003c/code\u003e\u003c/a\u003e Remove the random state caching (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/690\"\u003e#690\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/ded2e547566368d8751a13bf6b6e6ac8b509caa2\"\u003e\u003ccode\u003eded2e54\u003c/code\u003e\u003c/a\u003e Version 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/cb9b86128c9e79284f1bfad0dbd5d4c5427b5dfc\"\u003e\u003ccode\u003ecb9b861\u003c/code\u003e\u003c/a\u003e Move from MD5 to CRC32 for hashing test IDs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/688\"\u003e#688\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/bd697bd670943c54b8d21e713dea58ab92508d08\"\u003e\u003ccode\u003ebd697bd\u003c/code\u003e\u003c/a\u003e Use a different random seed per test (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/687\"\u003e#687\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/acadf4684fd12e5e9ca14243167f44b8d302f093\"\u003e\u003ccode\u003eacadf46\u003c/code\u003e\u003c/a\u003e Generate default seed on demand (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/685\"\u003e#685\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/f818056fa7933f9f08ff6c5cda0d78ecee14d0af\"\u003e\u003ccode\u003ef818056\u003c/code\u003e\u003c/a\u003e Support Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/684\"\u003e#684\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/456f7877992809b4e152bf3a356c0a4658275fb7\"\u003e\u003ccode\u003e456f787\u003c/code\u003e\u003c/a\u003e Drop unused import of xdist\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-randomly/commit/e00b7822dff8061d26ff2b4bdf9dc1a3ea823092\"\u003e\u003ccode\u003ee00b782\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-randomly/issues/682\"\u003e#682\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-randomly/compare/3.16.0...4.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-xdist` from 3.6.1 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst\"\u003epytest-xdist's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003epytest-xdist 3.8.0 (2025-06-30)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1083](https://github.com/pytest-dev/pytest-xdist/issues/1083) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1083\u0026gt;\u003c/code\u003e_: Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e option to control whether to automatically reorder tests in loadscope for tests where relative ordering matters. This only applies when using \u003ccode\u003eloadscope\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, [test_file_1, test_file_2, ..., test_file_n] are given as input test files, if \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e is used, for either worker, the \u003ccode\u003etest_file_a\u003c/code\u003e will be executed before \u003ccode\u003etest_file_b\u003c/code\u003e only if \u003ccode\u003ea \u0026lt; b\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default behavior is to reorder the tests to maximize the number of tests that can be executed in parallel.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003epytest-xdist 3.7.0 (2025-05-26)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1142](https://github.com/pytest-dev/pytest-xdist/issues/1142) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1142\u0026gt;\u003c/code\u003e_: Added support for Python 3.13.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1144](https://github.com/pytest-dev/pytest-xdist/issues/1144) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1144\u0026gt;\u003c/code\u003e_: The internal \u003ccode\u003esteal\u003c/code\u003e command is now atomic - it unschedules either all requested tests or none.\u003c/p\u003e\n\u003cp\u003eThis is a prerequisite for group/scope support in the \u003ccode\u003eworksteal\u003c/code\u003e scheduler, so test groups won't be broken up incorrectly.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1170](https://github.com/pytest-dev/pytest-xdist/issues/1170) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1170\u0026gt;\u003c/code\u003e_: Add the \u003ccode\u003e--px\u003c/code\u003e arg to create proxy gateways.\u003c/p\u003e\n\u003cp\u003eProxy gateways are passed to additional gateways using the \u003ccode\u003evia\u003c/code\u003e keyword.\nThey can serve as a way to run multiple workers on remote machines.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1200](https://github.com/pytest-dev/pytest-xdist/issues/1200) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1200\u0026gt;\u003c/code\u003e_: Now multiple \u003ccode\u003exdist_group\u003c/code\u003e markers are considered when assigning tests to groups (order does not matter).\u003c/p\u003e\n\u003cp\u003ePreviously, only the last marker would assign a test to a group, but now if a test has multiple \u003ccode\u003exdist_group\u003c/code\u003e marks applied (for example via parametrization or via fixtures), they are merged to make a new group.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemovals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#1162](https://github.com/pytest-dev/pytest-xdist/issues/1162) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1162\u0026gt;\u003c/code\u003e_: Dropped support for EOL Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTrivial Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1092](https://github.com/pytest-dev/pytest-xdist/issues/1092) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1092\u0026gt;\u003c/code\u003e_: Update an error message to better indicate where users should go for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1190](https://github.com/pytest-dev/pytest-xdist/issues/1190) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1190\u0026gt;\u003c/code\u003e_: Switched to using a SPDX license identifier introduced in PEP 639.\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-xdist/commit/1e3e4dc16523c8a8f6c67d95a950166420718c99\"\u003e\u003ccode\u003e1e3e4dc\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/600aad575a4e4382855145b0c464d51b8f0b7242\"\u003e\u003ccode\u003e600aad5\u003c/code\u003e\u003c/a\u003e Ensure all xdist group names are strings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/9d7ba5b5fbbbe26793fbfb7cb1903eb69425cf09\"\u003e\u003ccode\u003e9d7ba5b\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1217\"\u003e#1217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/532f07fb181bb1546eda79bbe6b46bdb56c699e1\"\u003e\u003ccode\u003e532f07f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1210\"\u003e#1210\u003c/a\u003e from pytest-dev/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/0883ad085e0cf039c8ae13eb2789c1076544d225\"\u003e\u003ccode\u003e0883ad0\u003c/code\u003e\u003c/a\u003e Fix Path usage in \u003ccode\u003etest_rsync_roots_no_roots\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/58a51bc14015d211761e44c2bdacab09c3893668\"\u003e\u003ccode\u003e58a51bc\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/59a2ad0150697b9ff837f3ae8dcf6e074d5a114b\"\u003e\u003ccode\u003e59a2ad0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1220\"\u003e#1220\u003c/a\u003e from pytest-dev/dependabot/github_actions/github-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/d42b9c72044855236c68286ca3bdb34486a05872\"\u003e\u003ccode\u003ed42b9c7\u003c/code\u003e\u003c/a\u003e build(deps): bump hynek/build-and-inspect-python-package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/ebfcb99072aed3503fda5175245f28895a0204bb\"\u003e\u003ccode\u003eebfcb99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1206\"\u003e#1206\u003c/a\u003e from pytest-dev/release-3.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/23b7fd6054298a530b02b33d07007b3082a36277\"\u003e\u003ccode\u003e23b7fd6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1207\"\u003e#1207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.15.0 to 1.18.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.18.2\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash on recursive alias (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19845\"\u003e19845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd additional guidance for stubtest errors when runtime is \u003ccode\u003eobject.__init__\u003c/code\u003e (Stephen Morton, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19733\"\u003e19733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix handling of None values in f-string expressions in mypyc (BobTheBuidler, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19846\"\u003e19846\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAli Hamdan\u003c/li\u003e\n\u003cli\u003eAnthony Sottile\u003c/li\u003e\n\u003cli\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDaniel Hnyk\u003c/li\u003e\n\u003cli\u003eEmily\u003c/li\u003e\n\u003cli\u003eEmma Smith\u003c/li\u003e\n\u003cli\u003eEthan Sarp\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJahongir Qurbonov\u003c/li\u003e\n\u003cli\u003eJelle Zijlstra\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eOmer Hadari\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\u003c/li\u003e\n\u003cli\u003ePrinceNaroliya\u003c/li\u003e\n\u003cli\u003eRandolf Scholz\u003c/li\u003e\n\u003cli\u003eRobsdedude\u003c/li\u003e\n\u003cli\u003eSaul Shanabrook\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003eStephen Morton\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.17\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.17 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\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/python/mypy/commit/df05f05555ee62dbdb9960c64cad186172e92be1\"\u003e\u003ccode\u003edf05f05\u003c/code\u003e\u003c/a\u003e remove +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/01a7a1285d03cb7a330359b22cb462aacb5f9720\"\u003e\u003ccode\u003e01a7a12\u003c/code\u003e\u003c/a\u003e Update changelog for 1.18.2 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19873\"\u003e#19873\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ca5abf09f3bfc543ac9c18a364696bc5da20bc03\"\u003e\u003ccode\u003eca5abf0\u003c/code\u003e\u003c/a\u003e Typeshed cherry-pick: Make type of \u003ccode\u003eunitest.mock.Any\u003c/code\u003e a subclass of \u003ccode\u003eAny\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/1\"\u003e#1\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/9d794b57d9c5b03d61caa3286756c05e0ae3021b\"\u003e\u003ccode\u003e9d794b5\u003c/code\u003e\u003c/a\u003e [mypyc] fix: inappropriate \u003ccode\u003eNone\u003c/code\u003es in f-strings (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19846\"\u003e#19846\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2c0510c84868b6bb42ef0f305b701e530a85c25f\"\u003e\u003ccode\u003e2c0510c\u003c/code\u003e\u003c/a\u003e stubtest: additional guidance on errors when runtime is object.\u003cstrong\u003einit\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19733\"\u003e#19733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2f3f03c3e39e68dbfa3544c01a34f99803b3e1c2\"\u003e\u003ccode\u003e2f3f03c\u003c/code\u003e\u003c/a\u003e Bump version to 1.18.2+dev for point release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/76698412bc1f3ca99000d52649acd5a0e06aa71d\"\u003e\u003ccode\u003e7669841\u003c/code\u003e\u003c/a\u003e Fix crash on recursive alias in indirection.py (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19845\"\u003e#19845\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/03fbaa941bccc3a9f8aea796d586603b67119bf2\"\u003e\u003ccode\u003e03fbaa9\u003c/code\u003e\u003c/a\u003e bump version to 1.18.1 due to wheels failure\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/b44a1fbf0cf9fd90fd29d6bcd9f64c55dd2fd4c8\"\u003e\u003ccode\u003eb44a1fb\u003c/code\u003e\u003c/a\u003e removed +dev from version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7197a99d1aebb1b7a584f82a53c44efb7dddf136\"\u003e\u003ccode\u003e7197a99\u003c/code\u003e\u003c/a\u003e Removed Unreleased in the Changelog for Release 1.18 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19827\"\u003e#19827\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.15.0...v1.18.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.0.20241016 to 2.32.4.20250913\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest...\n\n_Description has been truncated_","html_url":"https://github.com/yokomotod/poetry/pull/25","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/yokomotod%2Fpoetry/issues/25","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/25/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-29T19:45:51.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"3466379896","node_id":"PR_kwDOPuTSec6rLQGG","number":41,"state":"open","title":"chore(deps-pip): bump pytest-github-actions-annotate-failures from 0.2.0 to 0.3.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-29T19:45:51.000Z","updated_at":"2025-09-29T19:48:41.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-pip)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.2.0 to 0.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.2.0\u0026new-version=0.3.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/nickbaxter18/websitos/pull/41","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/nickbaxter18%2Fwebsitos/issues/41","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/41/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-28T21:07:37.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"2868412854","node_id":"PR_kwDOMt9I9c6q-IG2","number":78,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 34 updates","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-09-28T21:07:37.000Z","updated_at":"2025-09-28T21:07:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":34,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.7","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.14","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.4.0","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.405","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.13.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.7","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"6.1.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 34 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.7` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.14` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.4.0` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.405` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.1` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.13.2` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.7` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `6.1.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.15.0` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.7\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.10.7 — 2025-09-21\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: with branch coverage in large files, generating HTML, JSON, or\nLCOV reports could take far too long due to some quadratic behavior when\ncreating the function and class index pages.  This is now fixed, closing\n\u003ccode\u003eissue 2048\u003c/code\u003e_.  Thanks to Daniel Diniz for help diagnosing the problem.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMost warnings and a few errors now have links to a page in the docs\nexplaining the specific message.  Closes \u003ccode\u003eissue 1921\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1921: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1921\"\u003enedbat/coveragepy#1921\u003c/a\u003e\n.. _issue 2048: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003enedbat/coveragepy#2048\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-6:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\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/nedbat/coveragepy/commit/92a2af54e6bc948a9c536bd9b12bab70fb055904\"\u003e\u003ccode\u003e92a2af5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/952afdaca658d5e1acdd533c727448a0b218caf0\"\u003e\u003ccode\u003e952afda\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a301761e69da97b27662f395974d26f78fa8b2b5\"\u003e\u003ccode\u003ea301761\u003c/code\u003e\u003c/a\u003e build: riscv64 wheels (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2055\"\u003e#2055\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5daff8d38786aa540ff9bec622eb3389f117f911\"\u003e\u003ccode\u003e5daff8d\u003c/code\u003e\u003c/a\u003e docs: now source is formatted with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/04bbc3acfd914fdd99ffec9873bc03bdc7329357\"\u003e\u003ccode\u003e04bbc3a\u003c/code\u003e\u003c/a\u003e docs: discuss cog in the contributing docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/c181b9315f59a81667da47cf3d760d0253872238\"\u003e\u003ccode\u003ec181b93\u003c/code\u003e\u003c/a\u003e build: use cog --check-fail-msg to instruct devs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/33c4ba196f49e0ee86ab0ff473c0876c0bacd5fa\"\u003e\u003ccode\u003e33c4ba1\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0744b73b6b503ccf2cb75aba095c023672b921a8\"\u003e\u003ccode\u003e0744b73\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group across 1 directory with 2 updates (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0d5a112fc54c1d5a07f3f2ec451779808902c9af\"\u003e\u003ccode\u003e0d5a112\u003c/code\u003e\u003c/a\u003e perf: bulk narrowing to avoid N**2. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2048\"\u003e#2048\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a868ed9269ca474748130f5c6360cd2aae66ffc8\"\u003e\u003ccode\u003ea868ed9\u003c/code\u003e\u003c/a\u003e docs: mention Python Discord on the index page\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.14\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6667ae3392c3e2178469779352012d4518c8cdc0\"\u003e\u003ccode\u003e6667ae3\u003c/code\u003e\u003c/a\u003e v2.6.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/0ce88278a87decaf8a7b266074a0044a8fb8dd5c\"\u003e\u003ccode\u003e0ce8827\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/537\"\u003e#537\u003c/a\u003e from LNSD/add-meson-options-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/29d1fcc8d1dafe99cf82e4c3a6200acdd17490fd\"\u003e\u003ccode\u003e29d1fcc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/536\"\u003e#536\u003c/a\u003e from mike325/fix/add_robot_filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/daf602344d904fd56a85ae76f0a2594ddcebc479\"\u003e\u003ccode\u003edaf6023\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003emeson.options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6d493646beb1b740c4b871dd7692b5ab453c1beb\"\u003e\u003ccode\u003e6d49364\u003c/code\u003e\u003c/a\u003e fix: add robot filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/53fdb98ef92dc697d7b84cf07dbb3e6e5d7493f6\"\u003e\u003ccode\u003e53fdb98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/531\"\u003e#531\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/ffc2322be9c429f69761a777a2f9f1adc87680d0\"\u003e\u003ccode\u003effc2322\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redi...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/78","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/78","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/78/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-22T12:38:35.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"2849331215","node_id":"PR_kwDOOoM8J86p1VgP","number":66,"state":"closed","title":"pip(deps-dev): bump pytest-github-actions-annotate-failures from 0.2.0 to 0.3.0","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-09-22T12:42:03.000Z","author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-22T12:38:35.000Z","updated_at":"2025-09-22T12:42:03.000Z","time_to_close":208,"merged_at":"2025-09-22T12:42:03.000Z","merged_by":"github-actions[bot]","closed_by":null,"dependency_metadata":{"prefix":"pip(deps-dev)","packages":[{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) from 0.2.0 to 0.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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=pytest-github-actions-annotate-failures\u0026package-manager=pip\u0026previous-version=0.2.0\u0026new-version=0.3.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/philipp-horstenkamp/auto_print/pull/66","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/philipp-horstenkamp%2Fauto_print/issues/66","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/66/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-14T21:06:59.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"3415584727","node_id":"PR_kwDOMt9I9c6ogxBU","number":77,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 33 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-09-14T21:06:59.000Z","updated_at":"2025-09-14T21:08:38.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":33,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.6","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.14","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.4.0","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.405","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.2","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.15.0","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-randomly","old_version":"3.16.0","new_version":"4.0.1","repository_url":"https://github.com/pytest-dev/pytest-randomly"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.13.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.7","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"6.1.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 33 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.6` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.14` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.4.0` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.405` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.2` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `7.0.0` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.15.0` |\n| [pytest-randomly](https://github.com/pytest-dev/pytest-randomly) | `3.16.0` | `4.0.1` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.13.0` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.7` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `6.1.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.15.0` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.6\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.10.6 — 2025-08-29\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003esource\u003c/code\u003e directories were not properly communicated to subprocesses\nthat ran in different directories, as reported in \u003ccode\u003eissue 1499\u003c/code\u003e_.  This is now\nfixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance: \u003ccode\u003eAlex Gaynor continues fine-tuning \u0026lt;pull 2038_\u0026gt;\u003c/code\u003e_ the speed of\ncombination, especially with many contexts.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1499: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003enedbat/coveragepy#1499\u003c/a\u003e\n.. _pull 2038: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2038\"\u003enedbat/coveragepy#2038\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-5:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003epatch = fork\u003c/code\u003e for times when the built-in forking support is\ninsufficient.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003epatch = execv\u003c/code\u003e also inherits the entire coverage configuration now.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-10-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\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/nedbat/coveragepy/commit/88c55ff87437f7e59b42d131d0e2b6ce413546bf\"\u003e\u003ccode\u003e88c55ff\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/01d89959bfa825f661121e0f8d173f3ae1ecedac\"\u003e\u003ccode\u003e01d8995\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9b0c24ffc17840464c2343b702a6ee44e10fcadf\"\u003e\u003ccode\u003e9b0c24f\u003c/code\u003e\u003c/a\u003e docs: thanks Alex \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2038\"\u003e#2038\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/66d69108654f6fc1de916a37fc06ac898091aa2d\"\u003e\u003ccode\u003e66d6910\u003c/code\u003e\u003c/a\u003e fix: make \u003ccode\u003esource\u003c/code\u003e paths absolute where they exist. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1499\"\u003e#1499\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bb3382f50f2b91aebb046d665334a5d361e5ddc5\"\u003e\u003ccode\u003ebb3382f\u003c/code\u003e\u003c/a\u003e build: no need for the combine/html times now\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9ea349a164527832a49faa3eeec628d59ef75c7c\"\u003e\u003ccode\u003e9ea349a\u003c/code\u003e\u003c/a\u003e lab: warn_executed.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/808c9b48af3ad7b567182d383eb31451615664e0\"\u003e\u003ccode\u003e808c9b4\u003c/code\u003e\u003c/a\u003e build: changing metacov.ini should trigger metacov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/384f5f22bd1ef52000d80922de03922a58ff936c\"\u003e\u003ccode\u003e384f5f2\u003c/code\u003e\u003c/a\u003e build: oops, some 'if's are really line pragmas\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a7224af73365ba2d217f0e0966c7873c5bac3a67\"\u003e\u003ccode\u003ea7224af\u003c/code\u003e\u003c/a\u003e perf: pre-compute the mapping between other_db.context and main.context (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2038\"\u003e#2038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/5c00c5ba4bcd4f7da6a9f0ccd0797e0944415e8a\"\u003e\u003ccode\u003e5c00c5b\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group with 3 updates (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2039\"\u003e#2039\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.14\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6667ae3392c3e2178469779352012d4518c8cdc0\"\u003e\u003ccode\u003e6667ae3\u003c/code\u003e\u003c/a\u003e v2.6.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/0ce88278a87decaf8a7b266074a0044a8fb8dd5c\"\u003e\u003ccode\u003e0ce8827\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/537\"\u003e#537\u003c/a\u003e from LNSD/add-meson-options-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/29d1fcc8d1dafe99cf82e4c3a6200acdd17490fd\"\u003e\u003ccode\u003e29d1fcc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/536\"\u003e#536\u003c/a\u003e from mike325/fix/add_robot_filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/daf602344d904fd56a85ae76f0a2594ddcebc479\"\u003e\u003ccode\u003edaf6023\u003c/code\u003e\u003c/a\u003e Add support for \u003ccode\u003emeson.options\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/6d493646beb1b740c4b871dd7692b5ab453c1beb\"\u003e\u003ccode\u003e6d49364\u003c/code\u003e\u003c/a\u003e fix: add robot filetype\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/53fdb98ef92dc697d7b84cf07dbb3e6e5d7493f6\"\u003e\u003ccode\u003e53fdb98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/531\"\u003e#531\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/ffc2322be9c429f69761a777a2f9f1adc87680d0\"\u003e\u003ccode\u003effc2322\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redirect.github.com/davi...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/77","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/77","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/77/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-02T14:40:24.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"3376331534","node_id":"PR_kwDOPbpjzc6meNzg","number":14,"state":"open","title":"Bump the pip-deps group across 1 directory with 11 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-09-02T14:40:24.000Z","updated_at":"2025-10-01T19:27:12.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":11,"packages":[{"name":"pandas","old_version":"2.3.1","new_version":"2.3.2","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"pypdf","old_version":"5.9.0","new_version":"6.0.0","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"rapidfuzz","old_version":"3.13.0","new_version":"3.14.0","repository_url":"https://github.com/rapidfuzz/RapidFuzz"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.0.1","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.12.11","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"[//]: # (dependabot-start)\n⚠️  **Dependabot is rebasing this PR** ⚠️ \n\nRebasing might not happen immediately, so don't worry if this takes some time.\n\nNote: if you make any changes to this PR yourself, they will take precedence over the rebase.\n\n---\n\n[//]: # (dependabot-end)\n\nBumps the pip-deps group with 11 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.3.1` | `2.3.2` |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.0.0` |\n| [rapidfuzz](https://github.com/rapidfuzz/RapidFuzz) | `3.13.0` | `3.14.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.12.11` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `6.2.1` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.14.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\n\nUpdates `pandas` from 2.3.1 to 2.3.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pandas-dev/pandas/releases\"\u003epandas's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ePandas 2.3.2\u003c/h2\u003e\n\u003cp\u003eWe are pleased to announce the release of pandas 2.3.2.\nThis release includes some improvements and fixes to the future string data type (preview feature for the upcoming pandas 3.0). We recommend that all users upgrade to this version.\u003c/p\u003e\n\u003cp\u003eSee the \u003ca href=\"https://pandas.pydata.org/pandas-docs/version/2.3/whatsnew/v2.3.2.html\"\u003efull whatsnew\u003c/a\u003e for a list of all the changes.\nPandas 2.3.2 supports Python 3.9 and higher.\u003c/p\u003e\n\u003cp\u003eThe release will be available on the conda-forge channel:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003econda install pandas --channel conda-forge\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eOr via PyPI:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install --upgrade pandas\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003ePlease report any issues with the release on the \u003ca href=\"https://github.com/pandas-dev/pandas/issues\"\u003epandas issue tracker\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThanks to all the contributors who made this release possible.\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/pandas-dev/pandas/commit/4665c10899bc413b639194f6fb8665a5c70f7db5\"\u003e\u003ccode\u003e4665c10\u003c/code\u003e\u003c/a\u003e RLS: 2.3.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/633c68b91808441eba7d73b630a82b713ba19da8\"\u003e\u003ccode\u003e633c68b\u003c/code\u003e\u003c/a\u003e DOC: fix syntax in whatsnew file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/456ad4702cb017aab36e2d09a4029b1b085198f5\"\u003e\u003ccode\u003e456ad47\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62152\"\u003e#62152\u003c/a\u003e on branch 2.3.x (DOC: prepare 2.3.2 whatsnew notes for rel...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/6cae6444444ed7943ceffbd5990cd8249dd5b47c\"\u003e\u003ccode\u003e6cae644\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] DOC: move and reword whatsnew note for replace fix (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/57865\"\u003eGH-57865\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/a91c50a58c372cddf104fd60241c7284bbf8fc80\"\u003e\u003ccode\u003ea91c50a\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62147\"\u003e#62147\u003c/a\u003e on branch 2.3.x (DOC: correct and rewrite string migration...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/f7a2cfdf2ed08016167ae6c5e577c54949a849b2\"\u003e\u003ccode\u003ef7a2cfd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG/DEPR: logical operation with bool and string (\u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/61995\"\u003e#61995\u003c/a\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/7981a43db4339826a3ce5020e9b1b931e604e5bd\"\u003e\u003ccode\u003e7981a43\u003c/code\u003e\u003c/a\u003e Backport PR \u003ca href=\"https://redirect.github.com/pandas-dev/pandas/issues/62124\"\u003e#62124\u003c/a\u003e on branch 2.3.x (CI/BLD: don't use strict xfail for '%m.%Y...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/fafbcbd03d1721830f4df8255abdab341db2a583\"\u003e\u003ccode\u003efafbcbd\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG(CoW): also raise for chained assignment for .at / .iat (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/3ac64a714886d917ca24ba637a85c4aaf563fc1b\"\u003e\u003ccode\u003e3ac64a7\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: Fix Series.str.contains with compiled regex on Arrow st...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pandas-dev/pandas/commit/1f2dc4fd8a2503773b6f90cb5e8cc5c3172c3c11\"\u003e\u003ccode\u003e1f2dc4f\u003c/code\u003e\u003c/a\u003e [backport 2.3.x] BUG: fix Series.str.fullmatch() and Series.str.match() with ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pandas-dev/pandas/compare/v2.3.1...v2.3.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pypdf` from 5.9.0 to 6.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\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/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\u003c/a\u003e\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/py-pdf/pypdf/commit/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595\"\u003e\u003ccode\u003e0dd5773\u003c/code\u003e\u003c/a\u003e REL: 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/bb3a69030fde7da545229438ff327b8c971cef49\"\u003e\u003ccode\u003ebb3a690\u003c/code\u003e\u003c/a\u003e SEC: Limit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/979af6defdcbfac38ff1ae67594633f4ae548242\"\u003e\u003ccode\u003e979af6d\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignore of deprecation warning (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b622a2f51dd788f052245d48ad2f9a76cefca919\"\u003e\u003ccode\u003eb622a2f\u003c/code\u003e\u003c/a\u003e ENH: Move BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/0b58493ac3b725a342da3a53d5634b197e698ab2\"\u003e\u003ccode\u003e0b58493\u003c/code\u003e\u003c/a\u003e MAINT: Cleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/794504bb87f8fac0fb8d5830c9bcfb6530100431\"\u003e\u003ccode\u003e794504b\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignoring Ruff rule TD005 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3422\"\u003e#3422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/56f0eaa630a607d85d2137fac9ee60ed64c310a4\"\u003e\u003ccode\u003e56f0eaa\u003c/code\u003e\u003c/a\u003e DEV: Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3423\"\u003e#3423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1b3177b4eba8f71e565cc9a0dee8d7e64312d148\"\u003e\u003ccode\u003e1b3177b\u003c/code\u003e\u003c/a\u003e ROB: Skip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/8000cbe20eb81fd19b2dbacc1dc5a7df022d15ee\"\u003e\u003ccode\u003e8000cbe\u003c/code\u003e\u003c/a\u003e MAINT: Remove duplicate CCITT processing (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3415\"\u003e#3415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/ad85a228321e4dcac8a4b14fc7f84d1d2f8f4832\"\u003e\u003ccode\u003ead85a22\u003c/code\u003e\u003c/a\u003e MAINT: Remove erroneous comment (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3406\"\u003e#3406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rapidfuzz` from 3.13.0 to 3.14.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/releases\"\u003erapidfuzz's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.14.0\u003c/h2\u003e\n\u003ch2\u003eChanged\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.1.3\u003c/code\u003e. This enables compilation with free threaded python.\u003c/li\u003e\n\u003cli\u003eupgrade to \u003ccode\u003erapidfuzz-cpp==3.3\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eAdded\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd support for freethreaded Python\u003c/li\u003e\n\u003cli\u003eadd python 3.14 wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemoved\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edropped support for Python3.9\u003c/li\u003e\n\u003cli\u003edrop 32 bit linux wheels\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eFixed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eremove unused hook-dirs from pyinstaller config to fix a warning\u003c/li\u003e\n\u003cli\u003efixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003c/ul\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/rapidfuzz/RapidFuzz/blob/main/CHANGELOG.rst\"\u003erapidfuzz's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eChangelog\u003c/h2\u003e\n\u003cp\u003e[3.14.0] - 2025-08-27\n^^^^^^^^^^^^^^^^^^^^^\nChanged\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* upgrade to ``Cython==3.1.3``. This enables compilation with free threaded python.\n* upgrade to ``rapidfuzz-cpp==3.3.``\n\u003cp\u003eAdded\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e* add support for freethreaded Python\n* add python 3.14 wheels\n\nRemoved\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;dropped support for Python3.9\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;drop 32 bit linux wheels\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Fixed\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;* remove unused hook-dirs from pyinstaller config to fix a warning\n* fixed WRatio for a length ratio of exactly 8.0\n\n[3.13.0] - 2025-04-03\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;add support for arrays of type 'w'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;add support for any DTypeLike as dtype in \u0026lt;code\u0026gt;cdist\u0026lt;/code\u0026gt; and \u0026lt;code\u0026gt;cpdist\u0026lt;/code\u0026gt;\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;Changed\u0026lt;/p\u0026gt;\n\u0026lt;pre\u0026gt;\u0026lt;code\u0026gt;* upgrade to ``rapidfuzz-cpp==3.3.2``\n\n[3.12.2] - 2025-03-02\n^^^^^^^^^^^^^^^^^^^^^\nAdded\n\u003c/code\u003e\u003c/pre\u003e\n\u003cul\u003e\n\u003cli\u003eadded wheels for pypy 3.11\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eChanged\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eupgrade to \u003ccode\u003eCython==3.0.12\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e[3.12.1] - 2025-01-30\n^^^^^^^^^^^^^^^^^^^^^\nFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/rapidfuzz/RapidFuzz/commit/da7e03b0a1245551f67b80ded636c5a440df8225\"\u003e\u003ccode\u003eda7e03b\u003c/code\u003e\u003c/a\u003e tag version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/4d1a90d256db2fd833b94eedc436c38498f6e3af\"\u003e\u003ccode\u003e4d1a90d\u003c/code\u003e\u003c/a\u003e drop python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/a79f3a28dc2ed32b1a6f1eb60f87f2b7b9f66cc2\"\u003e\u003ccode\u003ea79f3a2\u003c/code\u003e\u003c/a\u003e improve build scripting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/9fb6a3e46be9c8266f97e096655c580af0323514\"\u003e\u003ccode\u003e9fb6a3e\u003c/code\u003e\u003c/a\u003e pypy is now built as part of the other builds\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/aab2d9c562ffb977d520c2a9bcb2193a5476c543\"\u003e\u003ccode\u003eaab2d9c\u003c/code\u003e\u003c/a\u003e fix type hint tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/8638ab26ffc3dc389ff2bac141a58a5808bd00b1\"\u003e\u003ccode\u003e8638ab2\u003c/code\u003e\u003c/a\u003e fixed WRatio for a length ratio of exactly 8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/8bda2f0c5e35abd046948f43d69cec4d38c12d36\"\u003e\u003ccode\u003e8bda2f0\u003c/code\u003e\u003c/a\u003e add python 3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/18e7eb29a2dedad80d6d4e5dc04b6499bc81b020\"\u003e\u003ccode\u003e18e7eb2\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/9c7d5f22e7496f1ccb4f11e5b990aabbf1b5145c\"\u003e\u003ccode\u003e9c7d5f2\u003c/code\u003e\u003c/a\u003e fix typing test\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/commit/c97b61f70b484cbaf03abf1819adc463c1e8f334\"\u003e\u003ccode\u003ec97b61f\u003c/code\u003e\u003c/a\u003e Fix None missing in extractOne return type\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/rapidfuzz/RapidFuzz/compare/v3.13.0...v3.14.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 3 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2334\"\u003e#2334\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003enit: Fix deprecation message link (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2220\"\u003e#2220\u003c/a\u003e) \u003ca href=\"https://github.com/syou6162\"\u003e\u003ccode\u003e@​syou6162\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with \u003ccode\u003eas\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix google style test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2336\"\u003e#2336\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 2 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2329\"\u003e#2329\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDependency updates round 1 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2325\"\u003e#2325\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun \u003ccode\u003epre-commit autoupdate\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2321\"\u003e#2321\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003e--diff\u003c/code\u003e to be used with \u003ccode\u003e--jobs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewemake\u003c/code\u003e has 80 chars hard limit, not 79 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix errors on \u003ccode\u003emain\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2320\"\u003e#2320\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed syntax error (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2289\"\u003e#2289\u003c/a\u003e) \u003ca href=\"https://github.com/Sergio-prog\"\u003e\u003ccode\u003e@​Sergio-prog\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: typo (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2298\"\u003e#2298\u003c/a\u003e) \u003ca href=\"https://github.com/Rotzbua\"\u003e\u003ccode\u003e@​Rotzbua\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003esort_reexports\u003c/code\u003e code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/c8ab4a5b21bac924d106e3103dd7c979fdd0f9bc\"\u003e\u003ccode\u003ec8ab4a5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e from xinydev/fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ee477e919867ffcd09d25a605f38f08a87c56f2e\"\u003e\u003ccode\u003eee477e9\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/790bb06e294d77461e7696bbdb0186289c9a4f87\"\u003e\u003ccode\u003e790bb06\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e from cclauss/ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/168d8508ae41a5f5f2fb1340b86fde2bfdb8266a\"\u003e\u003ccode\u003e168d850\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/6165d6b6e99dfd15b57896080359a46ba99eacda\"\u003e\u003ccode\u003e6165d6b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e from PyCQA/ci/remove-safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f776259106076faa8a758ebfd4abb3a736493024\"\u003e\u003ccode\u003ef776259\u003c/code\u003e\u003c/a\u003e Remove Safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/176ada2694779b6f4a366c7f8a4d788dc93b5d27\"\u003e\u003ccode\u003e176ada2\u003c/code\u003e\u003c/a\u003e Ruff rules PT for pytest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3305894bd9338e715a1ac6eb912cf608154ca471\"\u003e\u003ccode\u003e3305894\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e from cclauss/ruff-rules-B017-B028-E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1708f3e87ad1b1885e5bddcd29799a9434207738\"\u003e\u003ccode\u003e1708f3e\u003c/code\u003e\u003c/a\u003e Ruff rules B017, B028, and E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1157b58fb70b9166f75f567fdbe45d6fa2cbfc5c\"\u003e\u003ccode\u003e1157b58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e from cclauss/ruff\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.12.11\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.11\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Extend \u003ccode\u003eAIR311\u003c/code\u003e and \u003ccode\u003eAIR312\u003c/code\u003e rules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20082\"\u003e#20082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Replace wrong path \u003ccode\u003eairflow.io.storage\u003c/code\u003e with \u003ccode\u003eairflow.io.store\u003c/code\u003e (\u003ccode\u003eAIR311\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20081\"\u003e#20081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx-in-async-function\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging-format\u003c/code\u003e] Add auto-fix for f-string logging calls (\u003ccode\u003eG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19303\"\u003e#19303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH211\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20009\"\u003e#20009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Make \u003ccode\u003ePTH100\u003c/code\u003e fix unsafe because it can change behavior (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20100\"\u003e#20100\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Fix false positives caused by \u003ccode\u003e__class__\u003c/code\u003e cell handling (\u003ccode\u003eF841\u003c/code\u003e, \u003ccode\u003ePLE0117\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20048\"\u003e#20048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (\u003ccode\u003eF401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20115\"\u003e#20115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positive for t-strings in \u003ccode\u003edefault-factory-kwarg\u003c/code\u003e (\u003ccode\u003eRUF026\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20032\"\u003e#20032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19647\"\u003e#19647\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Handle empty t-strings in \u003ccode\u003eunnecessary-empty-iterable-within-deque-call\u003c/code\u003e (\u003ccode\u003eRUF037\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20045\"\u003e#20045\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003eD413\u003c/code\u003e links in docstrings convention FAQ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20089\"\u003e#20089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Update links to the table showing the correspondence between \u003ccode\u003eos\u003c/code\u003e and \u003ccode\u003epathlib\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20103\"\u003e#20103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Avasam\"\u003e\u003ccode\u003e@​Avasam\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/BurntSushi\"\u003e\u003ccode\u003e@​BurntSushi\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Gankra\"\u003e\u003ccode\u003e@​Gankra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Glyphack\"\u003e\u003ccode\u003e@​Glyphack\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JelleZijlstra\"\u003e\u003ccode\u003e@​JelleZijlstra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Lee-W\"\u003e\u003ccode\u003e@​Lee-W\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PrettyWood\"\u003e\u003ccode\u003e@​PrettyWood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Renkai\"\u003e\u003ccode\u003e@​Renkai\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/TaKO8Ki\"\u003e\u003ccode\u003e@​TaKO8Ki\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/amyreese\"\u003e\u003ccode\u003e@​amyreese\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/chirizxc\"\u003e\u003ccode\u003e@​chirizxc\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dylwil3\"\u003e\u003ccode\u003e@​dylwil3\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/github-actions\"\u003e\u003ccode\u003e@​github-actions\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hamirmahal\"\u003e\u003ccode\u003e@​hamirmahal\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.11\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Extend \u003ccode\u003eAIR311\u003c/code\u003e and \u003ccode\u003eAIR312\u003c/code\u003e rules (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20082\"\u003e#20082\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Replace wrong path \u003ccode\u003eairflow.io.storage\u003c/code\u003e with \u003ccode\u003eairflow.io.store\u003c/code\u003e (\u003ccode\u003eAIR311\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20081\"\u003e#20081\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx-in-async-function\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-logging-format\u003c/code\u003e] Add auto-fix for f-string logging calls (\u003ccode\u003eG004\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19303\"\u003e#19303\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add autofix for \u003ccode\u003ePTH211\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20009\"\u003e#20009\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Make \u003ccode\u003ePTH100\u003c/code\u003e fix unsafe because it can change behavior (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20100\"\u003e#20100\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e, \u003ccode\u003epylint\u003c/code\u003e] Fix false positives caused by \u003ccode\u003e__class__\u003c/code\u003e cell handling (\u003ccode\u003eF841\u003c/code\u003e, \u003ccode\u003ePLE0117\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20048\"\u003e#20048\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (\u003ccode\u003eF401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20115\"\u003e#20115\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Fix false positive for t-strings in \u003ccode\u003edefault-factory-kwarg\u003c/code\u003e (\u003ccode\u003eRUF026\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20032\"\u003e#20032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19647\"\u003e#19647\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Handle empty t-strings in \u003ccode\u003eunnecessary-empty-iterable-within-deque-call\u003c/code\u003e (\u003ccode\u003eRUF037\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20045\"\u003e#20045\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix incorrect \u003ccode\u003eD413\u003c/code\u003e links in docstrings convention FAQ (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20089\"\u003e#20089\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Update links to the table showing the correspondence between \u003ccode\u003eos\u003c/code\u003e and \u003ccode\u003epathlib\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20103\"\u003e#20103\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.12.10\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Implement fix for \u003ccode\u003emaxsplit\u003c/code\u003e without separator (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19851\"\u003e#19851\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-use-pathlib\u003c/code\u003e] Add fixes for \u003ccode\u003ePTH102\u003c/code\u003e and \u003ccode\u003ePTH103\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19514\"\u003e#19514\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eisort\u003c/code\u003e] Handle multiple continuation lines after module docstring (\u003ccode\u003eI002\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19818\"\u003e#19818\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Avoid reporting \u003ccode\u003e__future__\u003c/code\u003e features as unnecessary when they are used (\u003ccode\u003eUP010\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19769\"\u003e#19769\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyupgrade\u003c/code\u003e] Handle nested \u003ccode\u003eOptional\u003c/code\u003es (\u003ccode\u003eUP045\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19770\"\u003e#19770\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epycodestyle\u003c/code\u003e] Make \u003ccode\u003eE731\u003c/code\u003e fix unsafe instead of display-only for class assignments (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19700\"\u003e#19700\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003epyflakes\u003c/code\u003e] Add secondary annotation showing previous definition (\u003ccode\u003eF811\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19900\"\u003e#19900\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix description of global config file discovery strategy (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19188\"\u003e#19188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate outdated links to \u003ca href=\"https://typing.python.org/en/latest/source/stubs.html\"\u003ehttps://typing.python.org/en/latest/source/stubs.html\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19992\"\u003e#19992\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-annotations\u003c/code\u003e] Remove unused import in example (\u003ccode\u003eANN401\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/20000\"\u003e#20000\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/astral-sh/ruff/commit/c2bc15bc15103f46b55b6f35b1d0ce815fdfc547\"\u003e\u003ccode\u003ec2bc15b\u003c/code\u003e\u003c/a\u003e Bump 0.12.11 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20136\"\u003e#20136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/e586f6dcc426bdceddf43e811aaace460e4f56f9\"\u003e\u003ccode\u003ee586f6d\u003c/code\u003e\u003c/a\u003e [ty] Benchmarks for problematic implicit instance attributes cases (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20133\"\u003e#20133\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/76a6b7e3e2061de320a17ab7513708809019aecc\"\u003e\u003ccode\u003e76a6b7e\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003epyflakes\u003c/code\u003e] Fix \u003ccode\u003eallowed-unused-imports\u003c/code\u003e matching for top-level modules (`F4...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1ce65714c05faa85b177d5be8d16814820e23032\"\u003e\u003ccode\u003e1ce6571\u003c/code\u003e\u003c/a\u003e Move GitLab output rendering to \u003ccode\u003eruff_db\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20117\"\u003e#20117\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d9aaacd01f9da1219013c5413a94db7d487298d7\"\u003e\u003ccode\u003ed9aaacd\u003c/code\u003e\u003c/a\u003e [ty] Evaluate reachability of non-definitely-bound to Ambiguous (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19579\"\u003e#19579\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/18eaa659c1ea9a03bee798e161d2f2db454e154f\"\u003e\u003ccode\u003e18eaa65\u003c/code\u003e\u003c/a\u003e [ty] Introduce a representation for the top/bottom materialization of an inva...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/af259faed57f2428da4fa09aab03dbb96b0f160e\"\u003e\u003ccode\u003eaf259fa\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-async\u003c/code\u003e] Implement \u003ccode\u003eblocking-http-call-httpx\u003c/code\u003e (\u003ccode\u003eASYNC212\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20091\"\u003e#20091\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d75ef3823c7dc7c6a0dc38dbc42ab9f8075424b6\"\u003e\u003ccode\u003ed75ef38\u003c/code\u003e\u003c/a\u003e [ty] print diagnostics with fully qualified name to disambiguate some cases (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/89ca493fd963bb3ba875b170989d9468d2d1a5bd\"\u003e\u003ccode\u003e89ca493\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eruff\u003c/code\u003e] Preserve relative whitespace in multi-line expressions (\u003ccode\u003eRUF033\u003c/code\u003e) (#...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/4b80f5fa4f08dd0948761e15e36f5138658793e4\"\u003e\u003ccode\u003e4b80f5f\u003c/code\u003e\u003c/a\u003e [ty] Optimize TDD atom ordering (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/20098\"\u003e#20098\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.12.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 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\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.0 (2024-10-29)\u003c/p\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-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/v4.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.10.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/415\"\u003e#415\u003c/a\u003e: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/420\"\u003e#420\u003c/a\u003e: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/417\"\u003e#417\u003c/a\u003e: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/410\"\u003e#410\u003c/a\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ca href=\"https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\"\u003eWhy you shouldn't invoke setup.py directly\u003c/a\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.12.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003e#390\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.11.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#415](https://github.com/pytest-dev/pytest-mock/issues/415) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/415\u0026gt;\u003c/code\u003e_: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#420](https://github.com/pytest-dev/pytest-mock/issues/420) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/420\u0026gt;\u003c/code\u003e_: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#417](https://github.com/pytest-dev/pytest-mock/issues/417) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/417\u0026gt;\u003c/code\u003e_: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#410](https://github.com/pytest-dev/pytest-mock/issues/410) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/410\u0026gt;\u003c/code\u003e\u003cem\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ccode\u003eWhy you shouldn't invoke setup.py directly \u0026lt;https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\u0026gt;\u003c/code\u003e\u003c/em\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.12.0 (2023-10-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/14","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/14","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/14/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-08-24T21:22:26.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"3349918361","node_id":"PR_kwDOMt9I9c6lHRHg","number":75,"state":"open","title":"[pip] (deps): Bump the dev-dependencies group across 1 directory with 32 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":"CONTRIBUTOR","state_reason":null,"created_at":"2025-08-24T21:22:26.000Z","updated_at":"2025-09-14T23:01:01.720Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"[pip] (deps): Bump","group_name":"dev-dependencies","update_count":32,"packages":[{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"certifi","old_version":"2024.12.14","new_version":"2025.8.3","repository_url":"https://github.com/certifi/python-certifi"},{"name":"charset-normalizer","old_version":"3.4.1","new_version":"3.4.3","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"makefun","old_version":"1.15.6","new_version":"1.16.0","repository_url":"https://github.com/smarie/python-makefun"},{"name":"pychoir","old_version":"0.0.27","new_version":"0.0.29","repository_url":"https://github.com/kajaste/pychoir"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"coverage","old_version":"7.6.10","new_version":"7.10.5","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"distlib","old_version":"0.3.9","new_version":"0.4.0","repository_url":"https://github.com/pypa/distlib"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.0","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"filelock","old_version":"3.16.1","new_version":"3.19.1","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"freezegun","old_version":"1.5.1","new_version":"1.5.5","repository_url":"https://github.com/spulec/freezegun"},{"name":"identify","old_version":"2.6.5","new_version":"2.6.13","repository_url":"https://github.com/pre-commit/identify"},{"name":"iniconfig","old_version":"2.0.0","new_version":"2.1.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"junit-xml","old_version":"1.8","new_version":"1.9","repository_url":"https://github.com/kyrus/python-junit-xml"},{"name":"mutmut","old_version":"3.2.2","new_version":"3.3.1","repository_url":"https://github.com/boxed/mutmut"},{"name":"packaging","old_version":"24.2","new_version":"25.0","repository_url":"https://github.com/pypa/packaging"},{"name":"parso","old_version":"0.8.4","new_version":"0.8.5","repository_url":"https://github.com/davidhalter/parso"},{"name":"platformdirs","old_version":"4.3.6","new_version":"4.3.8","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"pluggy","old_version":"1.5.0","new_version":"1.6.0","repository_url":"https://github.com/pytest-dev/pluggy"},{"name":"pre-commit","old_version":"4.0.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"pygments","old_version":"2.19.1","new_version":"2.19.2","repository_url":"https://github.com/pygments/pygments"},{"name":"pyright","old_version":"1.1.391","new_version":"1.1.404","repository_url":"https://github.com/RobertCraigie/pyright-python"},{"name":"pytest","old_version":"8.3.4","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"rich","old_version":"13.9.4","new_version":"14.1.0","repository_url":"https://github.com/Textualize/rich"},{"name":"ruff","old_version":"0.8.6","new_version":"0.12.10","repository_url":"https://github.com/astral-sh/ruff"},{"name":"setproctitle","old_version":"1.3.4","new_version":"1.3.6","repository_url":"https://github.com/dvarrazzo/py-setproctitle"},{"name":"textual","old_version":"1.0.0","new_version":"5.3.0","repository_url":"https://github.com/Textualize/textual"},{"name":"typing-extensions","old_version":"4.12.2","new_version":"4.14.1","repository_url":"https://github.com/python/typing_extensions"},{"name":"virtualenv","old_version":"20.28.1","new_version":"20.34.0","repository_url":"https://github.com/pypa/virtualenv"}],"path":null,"ecosystem":"pip"},"body":"Bumps the dev-dependencies group with 32 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [certifi](https://github.com/certifi/python-certifi) | `2024.12.14` | `2025.8.3` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.1` | `3.4.3` |\n| [makefun](https://github.com/smarie/python-makefun) | `1.15.6` | `1.16.0` |\n| [pychoir](https://github.com/kajaste/pychoir) | `0.0.27` | `0.0.29` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.6.10` | `7.10.5` |\n| [distlib](https://github.com/pypa/distlib) | `0.3.9` | `0.4.0` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.16.1` | `3.19.1` |\n| [freezegun](https://github.com/spulec/freezegun) | `1.5.1` | `1.5.5` |\n| [identify](https://github.com/pre-commit/identify) | `2.6.5` | `2.6.13` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.0.0` | `2.1.0` |\n| [junit-xml](https://github.com/kyrus/python-junit-xml) | `1.8` | `1.9` |\n| [mutmut](https://github.com/boxed/mutmut) | `3.2.2` | `3.3.1` |\n| [packaging](https://github.com/pypa/packaging) | `24.2` | `25.0` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.4` | `0.8.5` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.3.6` | `4.3.8` |\n| [pluggy](https://github.com/pytest-dev/pluggy) | `1.5.0` | `1.6.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.0.1` | `4.3.0` |\n| [pygments](https://github.com/pygments/pygments) | `2.19.1` | `2.19.2` |\n| [pyright](https://github.com/RobertCraigie/pyright-python) | `1.1.391` | `1.1.404` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.4` | `8.4.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.0.0` | `6.2.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.14.1` |\n| [rich](https://github.com/Textualize/rich) | `13.9.4` | `14.1.0` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.8.6` | `0.12.10` |\n| [setproctitle](https://github.com/dvarrazzo/py-setproctitle) | `1.3.4` | `1.3.6` |\n| [textual](https://github.com/Textualize/textual) | `1.0.0` | `5.3.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.12.2` | `4.14.1` |\n| [virtualenv](https://github.com/pypa/virtualenv) | `20.28.1` | `20.34.0` |\n\n\nUpdates `python-json-logger` from 3.2.1 to 3.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/nhairs/python-json-logger/releases\"\u003epython-json-logger's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.3.0\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\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/nhairs/python-json-logger/blob/main/docs/changelog.md\"\u003epython-json-logger's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003e3.3.0\u003c/a\u003e - 2025-03-06\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eexc_info_as_array\u003c/code\u003e and \u003ccode\u003estack_info_as_array\u003c/code\u003e options are added to \u003ccode\u003epythonjsonlogger.core.BaseJsonFormatter\u003c/code\u003e allowing both to be encoded as list of lines instead of a single multi-line string. \u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/35\"\u003e#35\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eSecurity\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemove \u003ccode\u003emsgspec-python313-pre\u003c/code\u003e from \u003ccode\u003edev\u003c/code\u003e dependencies preventing potential RCE. Details: \u003ca href=\"https://github.com/nhairs/python-json-logger/security/advisories/GHSA-wmxh-pxcx-9w24#advisory-comment-121307\"\u003eGHSA-wmxh-pxcx-9w24\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks \u003ca href=\"https://github.com/1hakusai1\"\u003e\u003ccode\u003e@​1hakusai1\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/omnigodz\"\u003e\u003ccode\u003e@​omnigodz\u003c/code\u003e\u003c/a\u003e\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/nhairs/python-json-logger/commit/9e6cb679dfb56cb82d9a8cc91f956efd72427055\"\u003e\u003ccode\u003e9e6cb67\u003c/code\u003e\u003c/a\u003e Release 3.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/db04a0f9066cc331f8d6177f828fe073c7b2a4cc\"\u003e\u003ccode\u003edb04a0f\u003c/code\u003e\u003c/a\u003e Add options to encode stack information into an array (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/39\"\u003e#39\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/0092ea0be1cd28e3c1da51eaa084c503bb3710b7\"\u003e\u003ccode\u003e0092ea0\u003c/code\u003e\u003c/a\u003e Move to uv (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/40\"\u003e#40\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nhairs/python-json-logger/commit/1ce81a3614d8c77389a9c048d341593e2a7467e7\"\u003e\u003ccode\u003e1ce81a3\u003c/code\u003e\u003c/a\u003e [tests] Update tests for msgspec 0.19.0 (\u003ca href=\"https://redirect.github.com/nhairs/python-json-logger/issues/41\"\u003e#41\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/nhairs/python-json-logger/compare/v3.2.1...v3.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `certifi` from 2024.12.14 to 2025.8.3\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/a97d9ad8f87c382378dddc0b0b33b9770932404e\"\u003e\u003ccode\u003ea97d9ad\u003c/code\u003e\u003c/a\u003e 2025.08.03 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/362\"\u003e#362\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/ddd90c6d726f174c1e5820379dac0f2a8fc723a1\"\u003e\u003ccode\u003eddd90c6\u003c/code\u003e\u003c/a\u003e 2025.07.14 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/359\"\u003e#359\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d905221c916d51077f5c8071a0f7aa2df2a37c52\"\u003e\u003ccode\u003ed905221\u003c/code\u003e\u003c/a\u003e 2025.07.09 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/358\"\u003e#358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/e767d5938eddddf804216cec93a55c85129c5f2d\"\u003e\u003ccode\u003ee767d59\u003c/code\u003e\u003c/a\u003e 2025.06.15 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/357\"\u003e#357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/3e7076557d66b598fcca462e422dc988f09a6802\"\u003e\u003ccode\u003e3e70765\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.5.0 to 5.6.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/9afd2ff407b8a0638988c952a6636b8dd623af7c\"\u003e\u003ccode\u003e9afd2ff\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.2.1 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/d7c816cbc9cf621b3ddc8cd7fa7eda3f36982620\"\u003e\u003ccode\u003ed7c816c\u003c/code\u003e\u003c/a\u003e remove code that's no longer required that 3.7 is our minimum (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/351\"\u003e#351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/189961379209973abd0dd6304297f03e2359e1b9\"\u003e\u003ccode\u003e1899613\u003c/code\u003e\u003c/a\u003e Declare setuptools as the build backend in pyproject.toml (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/350\"\u003e#350\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/c8741423d67e1025c0bdad5225ded05cf962f207\"\u003e\u003ccode\u003ec874142\u003c/code\u003e\u003c/a\u003e update CI for ubuntu 20.04 deprecation (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/348\"\u003e#348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/certifi/python-certifi/commit/275c9eb55733a464589c15fb4566fddd4598e5b2\"\u003e\u003ccode\u003e275c9eb\u003c/code\u003e\u003c/a\u003e 2025.04.26 (\u003ca href=\"https://redirect.github.com/certifi/python-certifi/issues/347\"\u003e#347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/certifi/python-certifi/compare/2024.12.14...2025.08.03\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `charset-normalizer` from 3.4.1 to 3.4.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/jawah/charset_normalizer/releases\"\u003echarset-normalizer's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 3.4.3\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 3.4.2\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.9\u003c/li\u003e\n\u003c/ul\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/jawah/charset_normalizer/blob/master/CHANGELOG.md\"\u003echarset-normalizer's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.2...3.4.3\"\u003e3.4.3\u003c/a\u003e (2025-08-09)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003emypy(c) is no longer a required dependency at build time if \u003ccode\u003eCHARSET_NORMALIZER_USE_MYPYC\u003c/code\u003e isn't set to \u003ccode\u003e1\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/595\"\u003e#595\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/583\"\u003e#583\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eautomatically lower confidence on small bytes samples that are not Unicode in \u003ccode\u003edetect\u003c/code\u003e output legacy function. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/391\"\u003e#391\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCustom build backend to overcome inability to mark mypy as an optional dependency in the build phase.\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.14\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003esdist archive contained useless directories.\u003c/li\u003e\n\u003cli\u003eautomatically fallback on valid UTF-16 or UTF-32 even if the md says it's noisy. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/633\"\u003e#633\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSBOM are automatically published to the relevant GitHub release to comply with regulatory changes.\nEach published wheel comes with its SBOM. We choose CycloneDX as the format.\u003c/li\u003e\n\u003cli\u003ePrebuilt optimized wheel are no longer distributed by default for CPython 3.7 due to a change in cibuildwheel.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.1...3.4.2\"\u003e3.4.2\u003c/a\u003e (2025-05-02)\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAddressed the DeprecationWarning in our CLI regarding \u003ccode\u003eargparse.FileType\u003c/code\u003e by backporting the target class into the package. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/591\"\u003e#591\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eImproved the overall reliability of the detector with CJK Ideographs. (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/605\"\u003e#605\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/587\"\u003e#587\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOptional mypyc compilation upgraded to version 1.15 for Python \u0026gt;= 3.8\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/jawah/charset_normalizer/commit/46f662da20edeced520c8819965a37eefbbc85de\"\u003e\u003ccode\u003e46f662d\u003c/code\u003e\u003c/a\u003e Release 3.4.3 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/638\"\u003e#638\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1a059b26c155dd5fca408b0e0145c930633c4bf2\"\u003e\u003ccode\u003e1a059b2\u003c/code\u003e\u003c/a\u003e :wrench: skip building on freethreaded as we're not confident it is stable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/2275e3d3fea2bf6232661f1e9c21e7b81428e2a6\"\u003e\u003ccode\u003e2275e3d\u003c/code\u003e\u003c/a\u003e :pencil: final note in CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/c96acdfdb34b5b1deb6f70803167bae89b209832\"\u003e\u003ccode\u003ec96acdf\u003c/code\u003e\u003c/a\u003e :pencil: update release date on CHANGELOG.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/43e5460518003df24ad1a3e7b5c0a34445395012\"\u003e\u003ccode\u003e43e5460\u003c/code\u003e\u003c/a\u003e :pencil: update README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f277074e281a070cfa64fc91c46f8291043fc37c\"\u003e\u003ccode\u003ef277074\u003c/code\u003e\u003c/a\u003e :wrench: automatically lower confidence on small bytes str on non Unicode res...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/15ae2411072b5e026f2c9d6ec81b55f75af7dcf2\"\u003e\u003ccode\u003e15ae241\u003c/code\u003e\u003c/a\u003e :bug: automatically fallback on valid UTF-16 or UTF-32 even if the md says it...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/37397c1799a05454ab42fbbc94a7643cdb277924\"\u003e\u003ccode\u003e37397c1\u003c/code\u003e\u003c/a\u003e :wrench: enable 3.14 in nox test_mypyc session\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/cb82537ecad195f48383b92e330351cea1fc6bc8\"\u003e\u003ccode\u003ecb82537\u003c/code\u003e\u003c/a\u003e :rewind: revert license due to compat python 3.7 issue setuptools\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/6a2efeb4c6e205964b61008b0c36ddf88c321543\"\u003e\u003ccode\u003e6a2efeb\u003c/code\u003e\u003c/a\u003e :art: fix linter errors\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.1...3.4.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `makefun` from 1.15.6 to 1.16.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/smarie/python-makefun/blob/main/docs/changelog.md\"\u003emakefun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003e1.16.0 - Support for 3.14, dropped support for \u0026lt; 3.9\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved official support for python versions \u003ccode\u003e\u0026lt;3.9\u003c/code\u003e. These versions will not run in CI anymore.\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on python 3.14. Added python 3.14 to CI. Fixes\n\u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/112\"\u003e#112\u003c/a\u003e\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/smarie/python-makefun/commit/197b14827c1b7830c0288477c007e1f1592f52ad\"\u003e\u003ccode\u003e197b148\u003c/code\u003e\u003c/a\u003e Changelog for tag, ready to release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/321a39c9a8be1497ba7dfbb9c7c16a9442ae25a6\"\u003e\u003ccode\u003e321a39c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/118\"\u003e#118\u003c/a\u003e from smarie/feature/112_support_py314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/39f061e17a7d7472e33cec76d162381ae82b49e3\"\u003e\u003ccode\u003e39f061e\u003c/code\u003e\u003c/a\u003e With latest versions of all actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4771aaf910459dfabb12109cf4ae37cd089fd9d6\"\u003e\u003ccode\u003e4771aaf\u003c/code\u003e\u003c/a\u003e Changed the fix to leverage pytest-asyncio, now that we do not support python...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/498ed69f5fa22baa5300b354d419fd45be55cf6e\"\u003e\u003ccode\u003e498ed69\u003c/code\u003e\u003c/a\u003e Changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/87eb2ebefa88d212e4ae75f28fc0ffc2fb9194c6\"\u003e\u003ccode\u003e87eb2eb\u003c/code\u003e\u003c/a\u003e Fixed \u003ccode\u003eRuntimeError\u003c/code\u003e in tests when running on pythn 3.14. Added python 3.14 t...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/4573c65b6b8405b6194361805a44ba8d9d08c41d\"\u003e\u003ccode\u003e4573c65\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/117\"\u003e#117\u003c/a\u003e from smarie/chore/116_gh_pages_workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/db582747d0b89ea35927176910205f3f68a429d4\"\u003e\u003ccode\u003edb58274\u003c/code\u003e\u003c/a\u003e Added gh pages workflow. Fixed \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/116\"\u003e#116\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/c8990e6a660082b42f8314f96bf7369a0f6c2463\"\u003e\u003ccode\u003ec8990e6\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/smarie/python-makefun/issues/114\"\u003e#114\u003c/a\u003e from smarie/feature/py35_in_ci\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/smarie/python-makefun/commit/3b1e628e9e7ecf05ea9bc6a9fb73c45563a3c24a\"\u003e\u003ccode\u003e3b1e628\u003c/code\u003e\u003c/a\u003e Removed 3.14 for now\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/smarie/python-makefun/compare/1.15.6...1.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pychoir` from 0.0.27 to 0.0.29\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kajaste/pychoir/releases\"\u003epychoir's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eTwenty-ninth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitch pipenv \u0026amp; setuptools to uv by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/97\"\u003ekajaste/pychoir#97\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.28...v0.0.29\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eTwenty-eighth release\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/94\"\u003ekajaste/pychoir#94\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump dev deps by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/95\"\u003ekajaste/pychoir#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs \u0026amp; Makefile update by \u003ca href=\"https://github.com/kajaste\"\u003e\u003ccode\u003e@​kajaste\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/kajaste/pychoir/pull/96\"\u003ekajaste/pychoir#96\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\"\u003ehttps://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.28\u003c/a\u003e\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/kajaste/pychoir/commit/bf2f254bcadf03026867a6442523549f1abb16d3\"\u003e\u003ccode\u003ebf2f254\u003c/code\u003e\u003c/a\u003e Switch pipenv \u0026amp; setuptools to uv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/c1d251d480a47f8bc29e89765c19b00b594442b2\"\u003e\u003ccode\u003ec1d251d\u003c/code\u003e\u003c/a\u003e Docs \u0026amp; Makefile update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f6181a037d2e791bbf9306b4210a9b4934fc1bbf\"\u003e\u003ccode\u003ef6181a0\u003c/code\u003e\u003c/a\u003e Drop 3.7, add 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/f94fdad20f981f344adbdc07b9aa1cb00795b671\"\u003e\u003ccode\u003ef94fdad\u003c/code\u003e\u003c/a\u003e Bump dev deps\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kajaste/pychoir/commit/5a2ebd7ca625779b7beaab71d50631f9529f21eb\"\u003e\u003ccode\u003e5a2ebd7\u003c/code\u003e\u003c/a\u003e Update dev deps\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kajaste/pychoir/compare/v0.0.27...v0.0.29\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.32.4 to 2.32.5\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/requests/releases\"\u003erequests's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.32.5\u003c/h2\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\u003c/li\u003e\n\u003c/ul\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/psf/requests/blob/main/HISTORY.md\"\u003erequests's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.32.5 (2025-08-18)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe SSLContext caching feature originally introduced in 2.32.0 has created\na new class of issues in Requests that have had negative impact across a number\nof use cases. The Requests team has decided to revert this feature as long term\nmaintenance of it is proving to be unsustainable in its current iteration.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.8 following its end of support.\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/psf/requests/commit/b25c87d7cb8d6a18a37fa12442b5f883f9e41741\"\u003e\u003ccode\u003eb25c87d\u003c/code\u003e\u003c/a\u003e v2.32.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/131e506079d97606e4214cc4d87b780ac478de7a\"\u003e\u003ccode\u003e131e506\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/7010\"\u003e#7010\u003c/a\u003e from psf/dependabot/github_actions/actions/checkout-...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/b336cb2bc616a63a93c6470c558fc1f576b77f90\"\u003e\u003ccode\u003eb336cb2\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.0 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/46e939b5525d9c72b677340985582b04b128478a\"\u003e\u003ccode\u003e46e939b\u003c/code\u003e\u003c/a\u003e Update publish workflow to use \u003ccode\u003eartifact-id\u003c/code\u003e instead of \u003ccode\u003ename\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/4b9c546aa3f35fca6ca24945376fe7462bb007c4\"\u003e\u003ccode\u003e4b9c546\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6999\"\u003e#6999\u003c/a\u003e from psf/dependabot/github_actions/step-security/har...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7618dbef01d333f23ba4b9c4d97397b06dd89cb6\"\u003e\u003ccode\u003e7618dbe\u003c/code\u003e\u003c/a\u003e Bump step-security/harden-runner from 2.12.0 to 2.13.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/2edca11103c1c27dd8b572dab544b7f48cf3b446\"\u003e\u003ccode\u003e2edca11\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 and drop support for Python 3.8 (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6993\"\u003e#6993\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/fec96cd5976ad763e45bac9a033d62cca1877a00\"\u003e\u003ccode\u003efec96cd\u003c/code\u003e\u003c/a\u003e Update Makefile rules (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6996\"\u003e#6996\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/d58d8aa2f45c3575268d6d5250745ef69f9cf8b7\"\u003e\u003ccode\u003ed58d8aa\u003c/code\u003e\u003c/a\u003e docs: clarify timeout parameter uses seconds in Session.request (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6994\"\u003e#6994\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/91a3eabd3dcc4d7f36dd8249e4777a90ef9b4305\"\u003e\u003ccode\u003e91a3eab\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.5 to 3.29.0\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.32.4...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.6.10 to 7.10.5\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.10.5 — 2025-08-23\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBig speed improvements for \u003ccode\u003ecoverage combine\u003c/code\u003e: it's now about twice as\nfast! Huge thanks to Alex Gaynor for pull requests \u003ccode\u003e2032 \u0026lt;pull 2032_\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e2033 \u0026lt;pull 2033_\u0026gt;\u003c/code\u003e\u003c/em\u003e, and \u003ccode\u003e2034 \u0026lt;pull 2034_\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _pull 2032: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2032\"\u003enedbat/coveragepy#2032\u003c/a\u003e\n.. _pull 2033: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2033\"\u003enedbat/coveragepy#2033\u003c/a\u003e\n.. _pull 2034: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/pull/2034\"\u003enedbat/coveragepy#2034\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-4:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.4 — 2025-08-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003epatch = fork\u003c/code\u003e for times when the built-in forking support is\ninsufficient.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: \u003ccode\u003epatch = execv\u003c/code\u003e also inherits the entire coverage configuration now.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _changes_7-10-3:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\nstranded there and not combined into the totals, as described in \u003ccode\u003eissue 2025\u003c/code\u003e_.  This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Windows (or maybe only some Windows?) the patch would fail with a\n\u003ccode\u003eModuleNotFound\u003c/code\u003e error trying to import coverage.  This is now fixed,\nclosing \u003ccode\u003eissue 2022\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOriginally only options set in the coverage configuration file would apply\nto subprocesses.  Options set on the \u003ccode\u003ecoverage run\u003c/code\u003e command line (such as\n\u003ccode\u003e--branch\u003c/code\u003e) wouldn't be communicated to the subprocesses.  This could\nlead to combining failures, as described in \u003ccode\u003eissue 2021\u003c/code\u003e_. Now the entire\nconfiguration is used in subprocesses, regardless of its origin.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003edebug=patch\u003c/code\u003e to help diagnose problems.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: really close all SQLite databases, even in-memory ones. Closes `issue\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/nedbat/coveragepy/commit/810abeb149fff925e49eab37ceaee60cb2878f7d\"\u003e\u003ccode\u003e810abeb\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3c8f1b518cf933040059fd85b482827ed205e0d1\"\u003e\u003ccode\u003e3c8f1b5\u003c/code\u003e\u003c/a\u003e build: use --universal to keep platform conditions in .pip files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/107ae05233005f8a5d497d8492c6410428dbbc28\"\u003e\u003ccode\u003e107ae05\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/b5bc6d409aefc11d0277fbf8af9c930bea686ed5\"\u003e\u003ccode\u003eb5bc6d4\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/a5c18cc5eadc9df04005420207d53d74a94b9adf\"\u003e\u003ccode\u003ea5c18cc\u003c/code\u003e\u003c/a\u003e style: auto-generated changes shouldn't trigger ruff re-formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/1f9f84079aef5aab496381502aa818ea0574982a\"\u003e\u003ccode\u003e1f9f840\u003c/code\u003e\u003c/a\u003e build: tooling for ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/9ee5b3e9e053168caa4e7bd32389b5592ad9b503\"\u003e\u003ccode\u003e9ee5b3e\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/bfeb2aec1de7c298060b0c972f86d0f1f3e4da71\"\u003e\u003ccode\u003ebfeb2ae\u003c/code\u003e\u003c/a\u003e style: fix things so pylint is happy with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/82467f72306efdb207af09ace27b6b3ed4c7ad6f\"\u003e\u003ccode\u003e82467f7\u003c/code\u003e\u003c/a\u003e chore: \u003ccode\u003eruff format .\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/0a7b73346bc498a089df8cc7d4168dab7a326a06\"\u003e\u003ccode\u003e0a7b733\u003c/code\u003e\u003c/a\u003e refactor: remove unused things from lab/\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.6.10...7.10.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `distlib` from 0.3.9 to 0.4.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/distlib/blob/master/CHANGES.rst\"\u003edistlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.4.0\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nReleased: 2025-07-17\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003emarkers\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003einterpret_parsed\u003c/code\u003e function.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ewheel\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/238\"\u003e#238\u003c/a\u003e: Add build tag to wheel metadata if specified.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/243\"\u003e#243\u003c/a\u003e: Update to support free-threading version of Python (3.13t).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e: Support subdirectories in the dist-info directory. Thanks to Pieter P for the patch.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e: Fix path normalisation issue caused by the fix for \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eMove import in script wrapper to \u0026quot;if \u003cstrong\u003ename\u003c/strong\u003e == 'main'\u0026quot; clause.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003etests\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/245\"\u003e#245\u003c/a\u003e: Skip test_package_data if a SKIP_EXT_PACKAGE_DATA environment variable is present.\n\u003c/code\u003e\u003c/pre\u003e\u003c/li\u003e\n\u003c/ul\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/pypa/distlib/commit/aff2cbbc4e8a87b9440cb93472789a213813dbd6\"\u003e\u003ccode\u003eaff2cbb\u003c/code\u003e\u003c/a\u003e Finalise version.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/3716c4bcccac19d0c0f2ce0d1272dd33996381b5\"\u003e\u003ccode\u003e3716c4b\u003c/code\u003e\u003c/a\u003e Update change log, widen exception catching in test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/660bd337bf3217a7bd907c2ba8a2f8dd291ac793\"\u003e\u003ccode\u003e660bd33\u003c/code\u003e\u003c/a\u003e Changes for 0.4.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/56b4ad938455048fc79e599d369e02a1414e9946\"\u003e\u003ccode\u003e56b4ad9\u003c/code\u003e\u003c/a\u003e Guard script wrapper entrypoint import with if \u003cstrong\u003emain\u003c/strong\u003e (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/242\"\u003e#242\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/fe573669087cb1109fb0cc249bf0e06a5461324c\"\u003e\u003ccode\u003efe57366\u003c/code\u003e\u003c/a\u003e docs: update coverage results link (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/250\"\u003e#250\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/c3286e508bb60cd2337408d88eb614a93b612d8c\"\u003e\u003ccode\u003ec3286e5\u003c/code\u003e\u003c/a\u003e Temporarily exclude 3.13t on windows-latest.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/e6b83d3b0eeb11d8e7b053f11139d15aab89d196\"\u003e\u003ccode\u003ee6b83d3\u003c/code\u003e\u003c/a\u003e Normalize archive paths in dist-info (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/248\"\u003e#248\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/93baffeaa1773796d802bb761607a6466790dcba\"\u003e\u003ccode\u003e93baffe\u003c/code\u003e\u003c/a\u003e Skip no-longer-relevant test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/83f656836f4b6d8175172fcb8370fbee691f2bec\"\u003e\u003ccode\u003e83f6568\u003c/code\u003e\u003c/a\u003e Support subdirectories in .dist-info (fixes \u003ca href=\"https://redirect.github.com/pypa/distlib/issues/246\"\u003e#246\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/247\"\u003e#247\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/distlib/commit/f918abd5d20879041704f9d719533b213a55ad48\"\u003e\u003ccode\u003ef918abd\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003etest_wheel.WheelTestCase.test_abi\u003c/code\u003e for freethreading (\u003ca href=\"https://redirect.github.com/pypa/distlib/issues/244\"\u003e#244\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/distlib/compare/0.3.9...0.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `exceptiongroup` from 1.2.2 to 1.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/agronholm/exceptiongroup/releases\"\u003eexceptiongroup's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the signatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic types to define defaults for their generic arguments (defaulting to \u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e) (PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call \u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to emulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions, created from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to match CPython behavior (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/143\"\u003e#143\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\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/agronholm/exceptiongroup/blob/main/CHANGES.rst\"\u003eexceptiongroup's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eVersion history\u003c/h1\u003e\n\u003cp\u003eThis library adheres to \u003ccode\u003eSemantic Versioning 2.0 \u0026lt;http://semver.org/\u0026gt;\u003c/code\u003e_.\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003e1.3.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003e**kwargs\u003c/code\u003e to function and method signatures as appropriate to match the\nsignatures in the standard library\u003c/li\u003e\n\u003cli\u003eIn line with the stdlib typings in typeshed, updated \u003ccode\u003e(Base)ExceptionGroup\u003c/code\u003e generic\ntypes to define defaults for their generic arguments (defaulting to\n\u003ccode\u003eBaseExceptionGroup[BaseException]\u003c/code\u003e and \u003ccode\u003eExceptionGroup[Exception]\u003c/code\u003e)\n(PR by \u003ca href=\"https://github.com/mikenerone\"\u003e\u003ccode\u003e@​mikenerone\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged \u003ccode\u003eBaseExceptionGroup.__init__()\u003c/code\u003e to directly call\n\u003ccode\u003eBaseException.__init__()\u003c/code\u003e instead of the superclass \u003ccode\u003e__init__()\u003c/code\u003e in order to\nemulate the CPython behavior (broken or not) (PR by \u003ca href=\"https://github.com/cfbolz\"\u003e\u003ccode\u003e@​cfbolz\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eChanged the \u003ccode\u003eexceptions\u003c/code\u003e attribute to always return the same tuple of exceptions,\ncreated from the original exceptions sequence passed to \u003ccode\u003eBaseExceptionGroup\u003c/code\u003e to\nmatch CPython behavior\n(\u003ccode\u003e[#143](https://github.com/agronholm/exceptiongroup/issues/143) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/143\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.2\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved an \u003ccode\u003eassert\u003c/code\u003e in \u003ccode\u003eexceptiongroup._formatting\u003c/code\u003e that caused compatibility\nissues with Sentry (\u003ccode\u003e[#123](https://github.com/agronholm/exceptiongroup/issues/123) \u0026lt;https://github.com/agronholm/exceptiongroup/issues/123\u0026gt;\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.1\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated the copying of \u003ccode\u003e__notes__\u003c/code\u003e to match CPython behavior (PR by CF Bolz-Tereick)\u003c/li\u003e\n\u003cli\u003eCorrected the type annotation of the exception handler callback to accept a\n\u003ccode\u003eBaseExceptionGroup\u003c/code\u003e instead of \u003ccode\u003eBaseException\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed type errors on Python \u0026lt; 3.10 and the type annotation of \u003ccode\u003esuppress()\u003c/code\u003e\n(PR by John Litborn)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.2.0\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded special monkeypatching if \u003ccode\u003eApport \u0026lt;https://github.com/canonical/apport\u0026gt;\u003c/code\u003e_ has\noverridden \u003ccode\u003esys.excepthook\u003c/code\u003e so it will format exception groups correctly\n(PR by John Litborn)\u003c/li\u003e\n\u003cli\u003eAdded a backport of \u003ccode\u003econtextlib.suppress()\u003c/code\u003e from Python 3.12.1 which also handles\nsuppressing exceptions inside exception groups\u003c/li\u003e\n\u003cli\u003eFixed bare \u003ccode\u003eraise\u003c/code\u003e in a handler reraising the original naked exception rather than\nan exception group which is what is raised when you do a \u003ccode\u003eraise\u003c/code\u003e in an \u003ccode\u003eexcept*\u003c/code\u003e\nhandler\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003e1.1.3\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003ecatch()\u003c/code\u003e now raises a \u003ccode\u003eTypeError\u003c/code\u003e if passed an async exception handler instead of\njust giving a \u003ccode\u003eRuntimeWarning\u003c/code\u003e about the coroutine never being awaited. (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/66\"\u003e#66\u003c/a\u003e, PR by\nJohn Litborn)\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/agronholm/exceptiongroup/commit/77fba8a871408ff2c48f536e5e73b1918239ba5f\"\u003e\u003ccode\u003e77fba8a\u003c/code\u003e\u003c/a\u003e Added the release version\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5e153aa379ac53af79cc7f5e287f77929cb4d0dc\"\u003e\u003ccode\u003e5e153aa\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Migrated test dependencies to dependency groups\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/5000bfea208ad59e3a20e2fb91a513ad559711b1\"\u003e\u003ccode\u003e5000bfe\u003c/code\u003e\u003c/a\u003e Migrated tox configuration to native TOML\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/427220d67a52585e98575103b090b5fdaf87a899\"\u003e\u003ccode\u003e427220d\u003c/code\u003e\u003c/a\u003e Updated pytest options\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/4ca264fa3605d52067c20b351a0d3b947fa1f363\"\u003e\u003ccode\u003e4ca264f\u003c/code\u003e\u003c/a\u003e Migrated test dependencies to dependency groups\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/163c3a8cb27f8a5325258b5a83e7cf8fc002c3b7\"\u003e\u003ccode\u003e163c3a8\u003c/code\u003e\u003c/a\u003e Marked test_exceptions_mutate_original_sequence as xfail on pypy3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/a1765740db2d55d1eb91d67a8fbbb355caf7881b\"\u003e\u003ccode\u003ea176574\u003c/code\u003e\u003c/a\u003e Always create the exceptions tuple at init and return it from the exceptions ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/550b79621cc35892413fa91903a1d6c7951d0449\"\u003e\u003ccode\u003e550b796\u003c/code\u003e\u003c/a\u003e Added BaseExceptionGroup.\u003cstrong\u003einit\u003c/strong\u003e, following CPython (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/142\"\u003e#142\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/2a84dfd5599bca0c653143f0f4252d38afac9867\"\u003e\u003ccode\u003e2a84dfd\u003c/code\u003e\u003c/a\u003e Added typevar defaults to (Base)ExceptionGroup (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/147\"\u003e#147\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/agronholm/exceptiongroup/commit/fb9133b495fc82bc2907e8cfbdff6c6dc3087e2f\"\u003e\u003ccode\u003efb9133b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/agronholm/exceptiongroup/issues/145\"\u003e#145\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/agronholm/exceptiongroup/compare/1.2.2...1.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `filelock` from 3.16.1 to 3.19.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/tox-dev/py-filelock/releases\"\u003efilelock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.19.1\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd 3.14t (free threading) to matrix by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eIncrease test coverage by \u003ca href=\"https://github.com/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/434\"\u003etox-dev/filelock#434\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/paultiq\"\u003e\u003ccode\u003e@​paultiq\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/433\"\u003etox-dev/filelock#433\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\"\u003ehttps://github.com/tox-dev/filelock/compare/3.19.0...3.19.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.19.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for 3.14 by \u003ca href=\"https://github.com/gaborbernat\"\u003e\u003ccode\u003e@​gaborbernat\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/432\"\u003etox-dev/filelock#432\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.18.0...3.19.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.18.0\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIndicate that locks are exclusive/write locks. by \u003ca href=\"https://github.com/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport fcntl check on Emscripten by \u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\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/bicarlsen\"\u003e\u003ccode\u003e@​bicarlsen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/394\"\u003etox-dev/filelock#394\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/juntyr\"\u003e\u003ccode\u003e@​juntyr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/tox-dev/filelock/pull/398\"\u003etox-dev/filelock#398\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.17.0...3.18.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eDrop 3.8\u003c/h2\u003e\n\u003c!-- raw HTML omitted --\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\"\u003ehttps://github.com/tox-dev/filelock/compare/3.16.1...3.17.0\u003c/a\u003e\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/tox-dev/filelock/commit/8d1009f08a6a64624fad91d1079062ef31b8c2b4\"\u003e\u003ccode\u003e8d1009f\u003c/code\u003e\u003c/a\u003e Update release.yaml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/66a428e97a874b44b0310072f6c974226f55a472\"\u003e\u003ccode\u003e66a428e\u003c/code\u003e\u003c/a\u003e Increase test coverage (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/434\"\u003e#434\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0dfc86eebd2c76ae959a409bcbc3112cc1ec5890\"\u003e\u003ccode\u003e0dfc86e\u003c/code\u003e\u003c/a\u003e add 3.14 to matrix (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/433\"\u003e#433\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/0c54837e318ebe8a692b529722430cb38134bf7c\"\u003e\u003ccode\u003e0c54837\u003c/code\u003e\u003c/a\u003e Add support for 3.14 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/432\"\u003e#432\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/77d02f5ada3a1a92167b1beee35a7815cbde0fcf\"\u003e\u003ccode\u003e77d02f5\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/430\"\u003e#430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/bc972b33bf253bb9f08db32b19ffd4119a74706e\"\u003e\u003ccode\u003ebc972b3\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/429\"\u003e#429\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/78d02cb5ff42b22a56ad1a36755361a6b4601765\"\u003e\u003ccode\u003e78d02cb\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/428\"\u003e#428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/18cdb5d1c78a7a459463480303e9820f33cdf041\"\u003e\u003ccode\u003e18cdb5d\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/427\"\u003e#427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/b198a096d2bae58596479497d18a82bbeec515c8\"\u003e\u003ccode\u003eb198a09\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/426\"\u003e#426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/tox-dev/filelock/commit/6b097e76de603d9be6a24c5058b6fe53ef003afd\"\u003e\u003ccode\u003e6b097e7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/tox-dev/py-filelock/issues/425\"\u003e#425\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/tox-dev/py-filelock/compare/3.16.1...3.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `freezegun` from 1.5.1 to 1.5.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/spulec/freezegun/blob/master/CHANGELOG\"\u003efreezegun's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.5.5\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow parametrized arguments called 'func' (Broken in 1.5.4)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: Ability to yield fixtures (broken in 1.5.3)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix compatibility with pytest 8.4.0 when using fixtures\u003c/li\u003e\n\u003cli\u003eAdd (back) class-decorator overload to guarantee Pytype understands it\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.5.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.7\u003c/li\u003e\n\u003cli\u003eExplicitly marks support for Python 3.13\u003c/li\u003e\n\u003cli\u003eImproved project documentation\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/spulec/freezegun/commit/c9bf52c5aa12ea1b5b8647a136a92504ea071f2f\"\u003e\u003ccode\u003ec9bf52c\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0f2bd7ed8b420da73372f4cbb0207b777caa66e9\"\u003e\u003ccode\u003e0f2bd7e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/582\"\u003e#582\u003c/a\u003e from spulec/fixture-called-func\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/a6080557cbcbe4891843934c1334430bb1c5ead7\"\u003e\u003ccode\u003ea608055\u003c/code\u003e\u003c/a\u003e Allow parametrized arguments with name 'func'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/2bb47113a5f9f290d26630c92732e58f49557179\"\u003e\u003ccode\u003e2bb4711\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/7599eeea16b8f206e881892dc104128a5b36de82\"\u003e\u003ccode\u003e7599eee\u003c/code\u003e\u003c/a\u003e Add 1.5.4 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/0d00e7ddd9ad33fc63fbed29af17853b18bc3c61\"\u003e\u003ccode\u003e0d00e7d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/579\"\u003e#579\u003c/a\u003e from zsh8/decorate_generator\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/10c93f2d6c98f82e54470b05144cd0f17d3e1b46\"\u003e\u003ccode\u003e10c93f2\u003c/code\u003e\u003c/a\u003e fix: preserve functionality in pytest yield fixtures\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/d2e0a00addb0653b0cf3be65f8fa7137c7e3bda1\"\u003e\u003ccode\u003ed2e0a00\u003c/code\u003e\u003c/a\u003e Increase version number\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/6229e27d27ec61c4c55d7006db7ede6f16d7280a\"\u003e\u003ccode\u003e6229e27\u003c/code\u003e\u003c/a\u003e Add 1.5.3 release notes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/spulec/freezegun/commit/3111775d6e484f55a85030c626180b592adef569\"\u003e\u003ccode\u003e3111775\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/spulec/freezegun/issues/576\"\u003e#576\u003c/a\u003e from spulec/support-fixtures-pytest-840\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/spulec/freezegun/compare/1.5.1...1.5.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `identify` from 2.6.5 to 2.6.13\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/af4da9c69b07a41dfbfc1f3ec60d27d9aa0654dc\"\u003e\u003ccode\u003eaf4da9c\u003c/code\u003e\u003c/a\u003e v2.6.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bdf9c05f99c426e7ab115f68cf62bd0a70b33012\"\u003e\u003ccode\u003ebdf9c05\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/530\"\u003e#530\u003c/a\u003e from dirtcrusher/feature/special_cpp_extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a6b03cde137b43d4aa6bfd5ea80a762b923efa0\"\u003e\u003ccode\u003e1a6b03c\u003c/code\u003e\u003c/a\u003e Added C++ 'ipp' and 'tpp' file extensions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1a3399b87beba789ab56ab395737a9b7453ad58f\"\u003e\u003ccode\u003e1a3399b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/529\"\u003e#529\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/1097f76716bf2c93d86fea0e802c8c19df471c5c\"\u003e\u003ccode\u003e1097f76\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/bbfa5787afa5dce7508f4d91fea70fa1fb6b3dd8\"\u003e\u003ccode\u003ebbfa578\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/528\"\u003e#528\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/536d75194e326b7bdb6c5d6e0a66a6658d4a98ff\"\u003e\u003ccode\u003e536d751\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/e1c38fedb35173288c0b7abdabb8545e4ad46290\"\u003e\u003ccode\u003ee1c38fe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/526\"\u003e#526\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/d084d035b45bdf83a9d28b64977ae4629cacf2c2\"\u003e\u003ccode\u003ed084d03\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/identify/commit/40af39f8124a4e8029ff3716c2b0bbf2e1e5fb1e\"\u003e\u003ccode\u003e40af39f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/identify/issues/524\"\u003e#524\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/identify/compare/v2.6.5...v2.6.13\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `iniconfig` from 2.0.0 to 2.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/iniconfig/releases\"\u003einiconfig's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/26\"\u003e#26\u003c/a\u003e - list individuals in license file by \u003ca href=\"https://github.com/RonnyPfannschmidt\"\u003e\u003ccode\u003e@​RonnyPfannschmidt\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/52\"\u003epytest-dev/iniconfig#52\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun tests in CI by \u003ca href=\"https://github.com/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epypa/gh-action-pypi-publish@release/v1\u003c/code\u003e @ GHA by \u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\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/pytest-dev/iniconfig/pull/56\"\u003epytest-dev/iniconfig#56\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/nicoddemus\"\u003e\u003ccode\u003e@​nicoddemus\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/53\"\u003epytest-dev/iniconfig#53\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/webknjaz\"\u003e\u003ccode\u003e@​webknjaz\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/pull/54\"\u003epytest-dev/iniconfig#54\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ehttps://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.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/pytest-dev/iniconfig/blob/main/CHANGELOG\"\u003einiconfig's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.1.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003efix artifact building - pin minimal version of hatch\u003c/li\u003e\n\u003cli\u003edrop eol python 3.8\u003c/li\u003e\n\u003cli\u003eadd python 3.12 and 3.13\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/iniconfig/commit/34793a6417e35e511d0c17ffdd8a02ade0f9568e\"\u003e\u003ccode\u003e34793a6\u003c/code\u003e\u003c/a\u003e pre-commit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/136435d0a4345bb048dca98e7c2f4e938d74521b\"\u003e\u003ccode\u003e136435d\u003c/code\u003e\u003c/a\u003e update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/0bb99ad0f7a6b21d5eb24214a260132317a11e43\"\u003e\u003ccode\u003e0bb99ad\u003c/code\u003e\u003c/a\u003e fix \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/62\"\u003e#62\u003c/a\u003e: require a minimal hatch version with correct metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/16793eaddac67de0b8d621ae4e42e05b927e8d67\"\u003e\u003ccode\u003e16793ea\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/56\"\u003e#56\u003c/a\u003e from hugovk/add-3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/3dc2b2d6bf03e4b7cc92949a8ef0983fdd7ee442\"\u003e\u003ccode\u003e3dc2b2d\u003c/code\u003e\u003c/a\u003e Add support for Python 3.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/2eb8abfd9d3843100d7f138efe5bcd989a885024\"\u003e\u003ccode\u003e2eb8abf\u003c/code\u003e\u003c/a\u003e Bump GitHub Actions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/8c4bb5bf57dde613c8cdcf0e02a09b2fff630907\"\u003e\u003ccode\u003e8c4bb5b\u003c/code\u003e\u003c/a\u003e Set python-version for pre-commit to remove CI warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/58b22b2d672564ff1925df51f4a8e07486765ed2\"\u003e\u003ccode\u003e58b22b2\u003c/code\u003e\u003c/a\u003e Drop support for EOL Python 3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/4a53042252a109bcdd64422058de91c5dffff763\"\u003e\u003ccode\u003e4a53042\u003c/code\u003e\u003c/a\u003e Add support for Python 3.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/iniconfig/commit/9cae43103df70bac6fde7b9f35ad11a9f1be0cb4\"\u003e\u003ccode\u003e9cae431\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/iniconfig/issues/54\"\u003e#54\u003c/a\u003e from webknjaz/patch-1\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/iniconfig/compare/v2.0.0...v2.1.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `junit-xml` from 1.8 to 1.9\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/kyrus/python-junit-xml/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mutmut` from 3.2.2 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/boxed/mutmut/blob/main/HISTORY.rst\"\u003emutmut's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.3.1\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Increased threshold for mutant timeouts\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003etests_dir\u003c/code\u003e config. Accepts a single entry or a list of directories.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAsync generators fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed bad mutations for certain string escape sequences\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerformance fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eVarious internal bug fixes\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e3.3.0\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003ePython 3.13 compatibility!\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eNew argument \u003ccode\u003e--show-killed\u003c/code\u003e for \u003ccode\u003emutmut browse\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix to avoid accidentally importing the un-mutated original code\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eHandle segfault for mutant subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for string literals\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded mutations for common string methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFaster mutant generation via subprocesses\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix \u003ccode\u003eself\u003c/code\u003e parameter for mutated class methods\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix trampoline generation for function calls with 'orig' or 'mutants' as argument names.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eCopy full source directory before creating mutants\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eImproved error message when forced fail test fails\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed issue with spaces in the python executable path\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eDo not mutate \u003ccode\u003e__new__\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAnnotate mutant dicts (and fixes compatibility with Pydantic)\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eReplaced parso with LibCST\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/boxed/mutmut/commit/0f2586a806e069cc335d68ccd7d6277088f69249\"\u003e\u003ccode\u003e0f2586a\u003c/code\u003e\u003c/a\u003e Release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/6a5c471e0c13f782caacfdd244f2717002a13192\"\u003e\u003ccode\u003e6a5c471\u003c/code\u003e\u003c/a\u003e Pass mutation generation errors from subprocess to main process\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/7b03f4bffc3e8ac0c85158947e4659a5831cbf63\"\u003e\u003ccode\u003e7b03f4b\u003c/code\u003e\u003c/a\u003e Update timeout values\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3cd39fac6f800de8859b8e876d0f74cd100574c8\"\u003e\u003ccode\u003e3cd39fa\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/408\"\u003e#408\u003c/a\u003e from souradeep-das/souradeep/add_tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/3e52e5e13347589adf725de1847204aad1b22a64\"\u003e\u003ccode\u003e3e52e5e\u003c/code\u003e\u003c/a\u003e modify e2e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/10bb45183d781504fb13925dd3baee21edcf8673\"\u003e\u003ccode\u003e10bb451\u003c/code\u003e\u003c/a\u003e merge latest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/d4980abef4bbbcea6e9070bc0a1c92626bb9ebb4\"\u003e\u003ccode\u003ed4980ab\u003c/code\u003e\u003c/a\u003e fix: accept lists as tests_dir\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/22f3924b6b5a2ff7916c1f62aa1ed1f3341e42ee\"\u003e\u003ccode\u003e22f3924\u003c/code\u003e\u003c/a\u003e Improve diff view performance a bit\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/eb37032a679e1b160b012d838f798fd7fc266e48\"\u003e\u003ccode\u003eeb37032\u003c/code\u003e\u003c/a\u003e Make rlimit signal SIGXCPU first; only fallback to SIGKILL later on\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boxed/mutmut/commit/99ecd3209b8ed49b6dc9d97dcfe67e66f0e8e773\"\u003e\u003ccode\u003e99ecd32\u003c/code\u003e\u003c/a\u003e fix timeout checker \u0026quot;dictionary changed size during iteration\u0026quot; bug (\u003ca href=\"https://redirect.github.com/boxed/mutmut/issues/411\"\u003e#411\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boxed/mutmut/compare/3.2.2...3.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `packaging` from 24.2 to 25.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/packaging/releases\"\u003epackaging's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e25.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRe-add a test for Unicode file name parsing by \u003ca href=\"https://github.com/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to ruff 0.9.1 by \u003ca href=\"https://github.com/DimitriPapadopoulos\"\u003e\u003ccode\u003e@​DimitriPapadopoulos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/865\"\u003epypa/packaging#865\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for PEP 738 Android tags by \u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(markers): support 'extras' and 'dependency_groups' markers by \u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\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/Siddhesh-Agarwal\"\u003e\u003ccode\u003e@​Siddhesh-Agarwal\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/863\"\u003epypa/packaging#863\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mhsmith\"\u003e\u003ccode\u003e@​mhsmith\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/880\"\u003epypa/packaging#880\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/frostming\"\u003e\u003ccode\u003e@​frostming\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pypa/packaging/pull/888\"\u003epypa/packaging#888\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ehttps://github.com/pypa/packaging/compare/24.2...25.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/pypa/packaging/blob/main/CHANGELOG.rst\"\u003epackaging's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e25.0 - 2025-04-19\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* PEP 751: Add support for ``extras`` and ``dependency_groups`` markers. (:issue:`885`)\n* PEP 738: Add support for Android platform tags. (:issue:`880`)\n\u003c/code\u003e\u003c/pre\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/pypa/packaging/commit/f58537628042c7f29780b9d33f31597e7fc9d664\"\u003e\u003ccode\u003ef585376\u003c/code\u003e\u003c/a\u003e Bump for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/600ecea15b2388037b8dc94883504ca612947576\"\u003e\u003ccode\u003e600ecea\u003c/code\u003e\u003c/a\u003e Add changelog entries\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/3910129009b25dd1aa1fe32e644bc891188c56fe\"\u003e\u003ccode\u003e3910129\u003c/code\u003e\u003c/a\u003e support 'extras' and 'dependency_groups' markers (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/888\"\u003e#888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8e49b4373731bffb110c9583e64ad802cb67c7ea\"\u003e\u003ccode\u003e8e49b43\u003c/code\u003e\u003c/a\u003e Add support for PEP 738 Android tags (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/880\"\u003e#880\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/e624d8edfaa28865de7b5a7da8bd59fd410e5331\"\u003e\u003ccode\u003ee624d8e\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/886\"\u003e#886\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/71f38d872a6e88b28da9d1b270f8512475bc90d4\"\u003e\u003ccode\u003e71f38d8\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/878\"\u003e#878\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9b4922dd3c26c8522d716bec79d7e0ed408631c1\"\u003e\u003ccode\u003e9b4922d\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/870\"\u003e#870\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/8510bd9d3bab5571974202ec85f6ef7b0359bfaf\"\u003e\u003ccode\u003e8510bd9\u003c/code\u003e\u003c/a\u003e Upgrade to ruff 0.9.1 (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/865\"\u003e#865\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/9375ec2eff48257967c97d331b9a76019e95bdb0\"\u003e\u003ccode\u003e9375ec2\u003c/code\u003e\u003c/a\u003e Re-add tests for Unicode file name parsing (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/863\"\u003e#863\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/packaging/commit/2256ed4ac261309a09daa04cc801abd7cff2e6f0\"\u003e\u003ccode\u003e2256ed4\u003c/code\u003e\u003c/a\u003e Bump the github-actions group across 1 directory with 2 updates (\u003ca href=\"https://redirect.github.com/pypa/packaging/issues/864\"\u003e#864\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/packaging/compare/24.2...25.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `parso` from 0.8.4 to 0.8.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/davidhalter/parso/blob/master/CHANGELOG.rst\"\u003eparso's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e0.8.5 (2025-08-23)\n++++++++++++++++++\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd a fallback grammar for Python 3.14+\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/davidhalter/parso/commit/be9f5a401feaa1a7eda935bc68b2d3baed9a30ab\"\u003e\u003ccode\u003ebe9f5a4\u003c/code\u003e\u003c/a\u003e Prepare release 0.8.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/7e4777b775206038a1aa87282c79ed04f5f1c3fd\"\u003e\u003ccode\u003e7e4777b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/234\"\u003e#234\u003c/a\u003e from A5rocks/future-compatibility\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e99dbdd536da741d4935c427a6231f4d5eb6ea79\"\u003e\u003ccode\u003ee99dbdd\u003c/code\u003e\u003c/a\u003e Remove redundant warnings import\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/e22dc67aa10b53bbf069f825a0d40eefc727f0cb\"\u003e\u003ccode\u003ee22dc67\u003c/code\u003e\u003c/a\u003e Avoid warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/baa3c90d85a10f6abb8307246a89fc683981cee7\"\u003e\u003ccode\u003ebaa3c90\u003c/code\u003e\u003c/a\u003e Load newest grammar in face of a future grammar\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/23b1cdf73d95ae20f23e2fd198cafcd8fef529ad\"\u003e\u003ccode\u003e23b1cdf\u003c/code\u003e\u003c/a\u003e Drop Python 3.7 in CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/a73af5c709a292cbb789bf6cab38b20559f166c0\"\u003e\u003ccode\u003ea73af5c\u003c/code\u003e\u003c/a\u003e Fix pip install -e in docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/9328cffce392b4c3e907db4bbfad06ca1111b3ee\"\u003e\u003ccode\u003e9328cff\u003c/code\u003e\u003c/a\u003e Update classifiers in setup.py (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/230\"\u003e#230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/davidhalter/parso/commit/f670e6e7dc01e07576ec5c84cbf9fbce1a02c3eb\"\u003e\u003ccode\u003ef670e6e\u003c/code\u003e\u003c/a\u003e ENH: add grammar file for py314 (\u003ca href=\"https://redirect.github.com/davidhalter/parso/issues/229\"\u003e#229\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"http...\n\n_Description has been truncated_","html_url":"https://github.com/github/annotated-logger/pull/75","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/github%2Fannotated-logger/issues/75","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/75/packages"}},{"old_version":"0.1.8","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-08-20T22:12:08.000Z","version_change":"0.1.8 → 0.3.0","issue":{"uuid":"2761192683","node_id":"PR_kwDOPhcO_M6klHTr","number":1,"state":"open","title":"Bump the development-dependencies group with 2 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-20T22:12:08.000Z","updated_at":"2025-08-20T22:12:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development-dependencies","update_count":2,"packages":[{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 2 updates: [urllib3](https://github.com/urllib3/urllib3) and [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures).\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.0\"\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/autocode07/python-poetry__poetry.1c059ead/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/autocode07%2Fpython-poetry__poetry.1c059ead/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"}},{"old_version":"0.2.0","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-08-15T01:37:33.000Z","version_change":"0.2.0 → 0.3.0","issue":{"uuid":"3324068746","node_id":"PR_kwDOPbpjzc6jx6zC","number":12,"state":"open","title":"Bump the pip-deps group with 9 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-15T01:37:33.000Z","updated_at":"2025-09-01T23:47:09.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"pip-deps","update_count":9,"packages":[{"name":"pypdf","old_version":"5.9.0","new_version":"6.0.0","repository_url":"https://github.com/py-pdf/pypdf"},{"name":"bandit","old_version":"1.7.5","new_version":"1.8.6","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pre-commit","old_version":"3.3.1","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"isort","old_version":"5.13.2","new_version":"6.0.1","repository_url":"https://github.com/PyCQA/isort"},{"name":"ruff","old_version":"0.12.8","new_version":"0.12.9","repository_url":"https://github.com/astral-sh/ruff"},{"name":"pytest-cov","old_version":"4.0.0","new_version":"6.2.1","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-mock","old_version":"3.10.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest","old_version":"7.3.1","new_version":"8.4.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.2.0","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-deps group with 9 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pypdf](https://github.com/py-pdf/pypdf) | `5.9.0` | `6.0.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.8.6` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `3.3.1` | `4.3.0` |\n| [isort](https://github.com/PyCQA/isort) | `5.13.2` | `6.0.1` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.12.8` | `0.12.9` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.0.0` | `6.2.1` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.10.0` | `3.14.1` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.3.1` | `8.4.1` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.2.0` | `0.3.0` |\n\nUpdates `pypdf` from 5.9.0 to 6.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/py-pdf/pypdf/releases\"\u003epypdf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch2\u003eWhat's new\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e) by \u003ca href=\"https://github.com/j-t-1\"\u003e\u003ccode\u003e@​j-t-1\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e) by \u003ca href=\"https://github.com/badGarnet\"\u003e\u003ccode\u003e@​badGarnet\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e) by \u003ca href=\"https://github.com/stefan6419846\"\u003e\u003ccode\u003e@​stefan6419846\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\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/py-pdf/pypdf/blob/main/CHANGELOG.md\"\u003epypdf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.0.0, 2025-08-11\u003c/h2\u003e\n\u003ch3\u003eSecurity (SEC)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLimit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeprecations (DEP)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.8 support (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3412\"\u003e#3412\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eNew Features (ENH)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMove BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRobustness (ROB)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eSkip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDeveloper Experience (DEV)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate code style related libraries (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3414\"\u003e#3414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate mypy to 1.17.0 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3413\"\u003e#3413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop testing on Python 3.8 and start testing on Python 3.14 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3411\"\u003e#3411\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMaintenance (MAINT)\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eCleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003eFull Changelog\u003c/a\u003e\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/py-pdf/pypdf/commit/0dd57738bbdcdb63f0fb43d8a6b3d222b6946595\"\u003e\u003ccode\u003e0dd5773\u003c/code\u003e\u003c/a\u003e REL: 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/bb3a69030fde7da545229438ff327b8c971cef49\"\u003e\u003ccode\u003ebb3a690\u003c/code\u003e\u003c/a\u003e SEC: Limit decompressed size for FlateDecode filter (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3430\"\u003e#3430\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/979af6defdcbfac38ff1ae67594633f4ae548242\"\u003e\u003ccode\u003e979af6d\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignore of deprecation warning (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3428\"\u003e#3428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/b622a2f51dd788f052245d48ad2f9a76cefca919\"\u003e\u003ccode\u003eb622a2f\u003c/code\u003e\u003c/a\u003e ENH: Move BlackIs1 functionality to tiff_header (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3421\"\u003e#3421\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/0b58493ac3b725a342da3a53d5634b197e698ab2\"\u003e\u003ccode\u003e0b58493\u003c/code\u003e\u003c/a\u003e MAINT: Cleanup deprecations (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3424\"\u003e#3424\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/794504bb87f8fac0fb8d5830c9bcfb6530100431\"\u003e\u003ccode\u003e794504b\u003c/code\u003e\u003c/a\u003e MAINT: Remove ignoring Ruff rule TD005 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3422\"\u003e#3422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/56f0eaa630a607d85d2137fac9ee60ed64c310a4\"\u003e\u003ccode\u003e56f0eaa\u003c/code\u003e\u003c/a\u003e DEV: Bump actions/download-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3423\"\u003e#3423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/1b3177b4eba8f71e565cc9a0dee8d7e64312d148\"\u003e\u003ccode\u003e1b3177b\u003c/code\u003e\u003c/a\u003e ROB: Skip Go-To actions without a destination (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3420\"\u003e#3420\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/8000cbe20eb81fd19b2dbacc1dc5a7df022d15ee\"\u003e\u003ccode\u003e8000cbe\u003c/code\u003e\u003c/a\u003e MAINT: Remove duplicate CCITT processing (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3415\"\u003e#3415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/py-pdf/pypdf/commit/ad85a228321e4dcac8a4b14fc7f84d1d2f8f4832\"\u003e\u003ccode\u003ead85a22\u003c/code\u003e\u003c/a\u003e MAINT: Remove erroneous comment (\u003ca href=\"https://redirect.github.com/py-pdf/pypdf/issues/3406\"\u003e#3406\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/py-pdf/pypdf/compare/5.9.0...6.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.7.5 to 1.8.6\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/bandit/releases\"\u003ebandit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.8.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.2 to 3.9.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1279\"\u003ePyCQA/bandit#1279\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.10.0 to 3.11.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1278\"\u003ePyCQA/bandit#1278\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadded hint to FreeBSD package in doc/source/integrations.rst by \u003ca href=\"https://github.com/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.9.0 to 3.9.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1284\"\u003ePyCQA/bandit#1284\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHuggingface revision pinning by \u003ca href=\"https://github.com/lukehinds\"\u003e\u003ccode\u003e@​lukehinds\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1281\"\u003ePyCQA/bandit#1281\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/daniel-mohr\"\u003e\u003ccode\u003e@​daniel-mohr\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1282\"\u003ePyCQA/bandit#1282\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.5...1.8.6\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.5\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix the rendering of the CI/CD doc by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1274\"\u003ePyCQA/bandit#1274\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix for publish to PyPI failure by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1273\"\u003ePyCQA/bandit#1273\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\"\u003ehttps://github.com/PyCQA/bandit/compare/1.8.4...1.8.5\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.8.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd more random functions to B311 check by \u003ca href=\"https://github.com/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMetadata: rename classifier to classifiers by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1237\"\u003ePyCQA/bandit#1237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.0 to 3.8.1 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1239\"\u003ePyCQA/bandit#1239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.13.0 to 6.14.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1238\"\u003ePyCQA/bandit#1238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.14.0 to 6.15.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1240\"\u003ePyCQA/bandit#1240\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.9.0 to 3.10.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1241\"\u003ePyCQA/bandit#1241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.3.0 to 3.4.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1245\"\u003ePyCQA/bandit#1245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump bandit version in bug template by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1247\"\u003ePyCQA/bandit#1247\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix traceback from trojansource plugin by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1248\"\u003ePyCQA/bandit#1248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure the man page is built by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1257\"\u003ePyCQA/bandit#1257\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate documentation to cover \u003ccode\u003e--severity-level\u003c/code\u003e and \u003ccode\u003e--confidence-level\u003c/code\u003e by \u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse license property in lieu of classifier by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1259\"\u003ePyCQA/bandit#1259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix up some of the warnings when building docs by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1258\"\u003ePyCQA/bandit#1258\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a doc describing various integrations by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1253\"\u003ePyCQA/bandit#1253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse ubuntu latest for readthedocs build by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1260\"\u003ePyCQA/bandit#1260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.15.0 to 6.16.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1261\"\u003ePyCQA/bandit#1261\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.8.1 to 3.8.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1262\"\u003ePyCQA/bandit#1262\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove etc from list of temp paths by \u003ca href=\"https://github.com/ericwb\"\u003e\u003ccode\u003e@​ericwb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1263\"\u003ePyCQA/bandit#1263\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.16.0 to 6.17.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1265\"\u003ePyCQA/bandit#1265\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[pre-commit.ci] pre-commit autoupdate by \u003ca href=\"https://github.com/pre-commit-ci\"\u003e\u003ccode\u003e@​pre-commit-ci\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1266\"\u003ePyCQA/bandit#1266\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.17.0 to 6.18.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1268\"\u003ePyCQA/bandit#1268\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eadd github-actions documentation by \u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/aripollak\"\u003e\u003ccode\u003e@​aripollak\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1235\"\u003ePyCQA/bandit#1235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bmos\"\u003e\u003ccode\u003e@​bmos\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1254\"\u003ePyCQA/bandit#1254\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Killpit\"\u003e\u003ccode\u003e@​Killpit\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1172\"\u003ePyCQA/bandit#1172\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/PyCQA/bandit/commit/2d0b675b04c80ae42277e10500db06a0a37bae17\"\u003e\u003ccode\u003e2d0b675\u003c/code\u003e\u003c/a\u003e Huggingface revision pinning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1281\"\u003e#1281\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4cd133702236f1c5d28b2136561362467d31852c\"\u003e\u003ccode\u003e4cd1337\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.9.0 to 3.9.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1284\"\u003e#1284\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ffed1bbf0adb2d259005aca6da506e86a291c987\"\u003e\u003ccode\u003effed1bb\u003c/code\u003e\u003c/a\u003e added hint to FreeBSD package in doc/source/integrations.rst (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1282\"\u003e#1282\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/090ba0f00907bda36ab0cdbfc85aa49df37f75de\"\u003e\u003ccode\u003e090ba0f\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.10.0 to 3.11.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1278\"\u003e#1278\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/33c678989022e186661cb2d5cafff87564fd79a1\"\u003e\u003ccode\u003e33c6789\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.8.2 to 3.9.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1279\"\u003e#1279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/23d269a665abd84597785fdf8fdda04ea89f59f3\"\u003e\u003ccode\u003e23d269a\u003c/code\u003e\u003c/a\u003e Fix for publish to PyPI failure (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e3ff8b5332a5bddaae8d4da39237d2456fb8b84c\"\u003e\u003ccode\u003ee3ff8b5\u003c/code\u003e\u003c/a\u003e Fix the rendering of the CI/CD doc (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1274\"\u003e#1274\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/61d1667e87f02859412b5978bd1064d4606ffa69\"\u003e\u003ccode\u003e61d1667\u003c/code\u003e\u003c/a\u003e add github-actions documentation (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/cea2b1ccdc711f7d4a5f757d7f8de9ad17123450\"\u003e\u003ccode\u003ecea2b1c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.17.0 to 6.18.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1268\"\u003e#1268\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/2d577a6a9f56a59d830a0f873c527d2323694e61\"\u003e\u003ccode\u003e2d577a6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1266\"\u003e#1266\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.8.6\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pre-commit` from 3.3.1 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.2.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for the default language version before consulting a potentially unversioned \u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.1.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.1\u003c/h2\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3324\"\u003e#3324\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit-ci/issues/issues/234\"\u003epre-commit-ci/issues#234\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003epre-commit v4.0.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove \u003ccode\u003epre-commit migrate-config\u003c/code\u003e to handle more yaml formats.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3301\"\u003e#3301\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eHandle \u003ccode\u003estages\u003c/code\u003e deprecation in \u003ccode\u003epre-commit migrate-config\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3302\"\u003e#3302\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2732\"\u003e#2732\u003c/a\u003e issue by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpgrade \u003ccode\u003eruby-build\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.2.0 - 2025-03-18\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFor \u003ccode\u003elanguage: python\u003c/code\u003e first attempt a versioned python executable for\nthe default language version before consulting a potentially unversioned\n\u003ccode\u003esys.executable\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3430\"\u003e#3430\u003c/a\u003e PR by \u003ca href=\"https://github.com/asottile\"\u003e\u003ccode\u003e@​asottile\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eHandle error during conflict detection when a file is named \u0026quot;HEAD\u0026quot;\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3425\"\u003e#3425\u003c/a\u003e PR by \u003ca href=\"https://github.com/tusharsadhwani\"\u003e\u003ccode\u003e@​tusharsadhwani\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.1.0 - 2025-01-20\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003elanguage: julia\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3348\"\u003e#3348\u003c/a\u003e PR by \u003ca href=\"https://github.com/fredrikekre\"\u003e\u003ccode\u003e@​fredrikekre\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/2689\"\u003e#2689\u003c/a\u003e issue \u003ca href=\"https://github.com/jmuchovej\"\u003e\u003ccode\u003e@​jmuchovej\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDisable automatic toolchain switching for \u003ccode\u003elanguage: golang\u003c/code\u003e.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3304\"\u003e#3304\u003c/a\u003e PR by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3300\"\u003e#3300\u003c/a\u003e issue by \u003ca href=\"https://github.com/AleksaC\"\u003e\u003ccode\u003e@​AleksaC\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3149\"\u003e#3149\u003c/a\u003e issue by \u003ca href=\"https://github.com/nijel\"\u003e\u003ccode\u003e@​nijel\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003elanguage: r\u003c/code\u003e installation when initiated by RStudio.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3389\"\u003e#3389\u003c/a\u003e PR by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3385\"\u003e#3385\u003c/a\u003e issue by \u003ca href=\"https://github.com/lorenzwalthert\"\u003e\u003ccode\u003e@​lorenzwalthert\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e4.0.1 - 2024-10-08\u003c/h1\u003e\n\u003ch3\u003eFixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003epre-commit migrate-config\u003c/code\u003e for unquoted deprecated stages names with\npurelib \u003ccode\u003epyyaml\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\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v3.3.1...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 5.13.2 to 6.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/releases\"\u003eisort's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.1\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix multi_line_output_modes docs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e) \u003ca href=\"https://github.com/xinydev\"\u003e\u003ccode\u003e@​xinydev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules PT for pytest (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRuff rules B017, B028, and E203 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLint Python code with ruff (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix test_find_imports_in_file_error failing on Windows (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2369\"\u003e#2369\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMove flake8 settings into pyproject.toml (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2360\"\u003e#2360\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpgrade to uv\u0026gt;=0.6.0 and enable-cache (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2364\"\u003e#2364\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eApply some ruff rules (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2353\"\u003e#2353\u003c/a\u003e) \u003ca href=\"https://github.com/cclauss\"\u003e\u003ccode\u003e@​cclauss\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd OSError handling in find_imports_in_file (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2331\"\u003e#2331\u003c/a\u003e) \u003ca href=\"https://github.com/kobarity\"\u003e\u003ccode\u003e@​kobarity\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLink GH as changelog (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2354\"\u003e#2354\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:construction_worker: Continuous Integration\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove Safety (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e) \u003ca href=\"https://github.com/staticdev\"\u003e\u003ccode\u003e@​staticdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.0.0\u003c/h2\u003e\n\u003ch2\u003eChanges\u003c/h2\u003e\n\u003ch2\u003e:boom: Breaking Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemove support for Python 3.8 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2327\"\u003e#2327\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:rocket: Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.13 support (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2306\"\u003e#2306\u003c/a\u003e) \u003ca href=\"https://github.com/mayty\"\u003e\u003ccode\u003e@​mayty\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 3 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2334\"\u003e#2334\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSpeed up exists_case_sensitive calls (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2264\"\u003e#2264\u003c/a\u003e) \u003ca href=\"https://github.com/correctmost\"\u003e\u003ccode\u003e@​correctmost\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003enit: Fix deprecation message link (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2220\"\u003e#2220\u003c/a\u003e) \u003ca href=\"https://github.com/syou6162\"\u003e\u003ccode\u003e@​syou6162\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure that split_on_trailing_comma works with \u003ccode\u003eas\u003c/code\u003e imports (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2340\"\u003e#2340\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBlack profile: enable magic comma (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2236\"\u003e#2236\u003c/a\u003e) \u003ca href=\"https://github.com/MrMino\"\u003e\u003ccode\u003e@​MrMino\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix google style test (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2336\"\u003e#2336\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate line_length and single_line_exclusions in google profile (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2149\"\u003e#2149\u003c/a\u003e) \u003ca href=\"https://github.com/jagapiou\"\u003e\u003ccode\u003e@​jagapiou\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates round 2 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2329\"\u003e#2329\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDependency updates round 1 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2325\"\u003e#2325\u003c/a\u003e) \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRun \u003ccode\u003epre-commit autoupdate\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2321\"\u003e#2321\u003c/a\u003e) \u003ca href=\"https://github.com/kurtmckee\"\u003e\u003ccode\u003e@​kurtmckee\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e:beetle: Fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAllow \u003ccode\u003e--diff\u003c/code\u003e to be used with \u003ccode\u003e--jobs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2302\"\u003e#2302\u003c/a\u003e) \u003ca href=\"https://github.com/mnakama\"\u003e\u003ccode\u003e@​mnakama\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003ewemake\u003c/code\u003e has 80 chars hard limit, not 79 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2241\"\u003e#2241\u003c/a\u003e) \u003ca href=\"https://github.com/sobolevn\"\u003e\u003ccode\u003e@​sobolevn\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix errors on \u003ccode\u003emain\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2320\"\u003e#2320\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed syntax error (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2289\"\u003e#2289\u003c/a\u003e) \u003ca href=\"https://github.com/Sergio-prog\"\u003e\u003ccode\u003e@​Sergio-prog\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: typo (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2298\"\u003e#2298\u003c/a\u003e) \u003ca href=\"https://github.com/Rotzbua\"\u003e\u003ccode\u003e@​Rotzbua\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003esort_reexports\u003c/code\u003e code mangling (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2283\"\u003e#2283\u003c/a\u003e) \u003ca href=\"https://github.com/Helveg\"\u003e\u003ccode\u003e@​Helveg\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/PyCQA/isort/blob/main/CHANGELOG.md\"\u003eisort's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003eNOTE: isort follows the \u003ca href=\"https://semver.org/\"\u003esemver\u003c/a\u003e versioning standard.\nFind out more about isort's release policy \u003ca href=\"https://pycqa.github.io/isort/docs/major_releases/release_policy\"\u003ehere\u003c/a\u003e.\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/PyCQA/isort/commit/c8ab4a5b21bac924d106e3103dd7c979fdd0f9bc\"\u003e\u003ccode\u003ec8ab4a5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2096\"\u003e#2096\u003c/a\u003e from xinydev/fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/ee477e919867ffcd09d25a605f38f08a87c56f2e\"\u003e\u003ccode\u003eee477e9\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into fix-docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/790bb06e294d77461e7696bbdb0186289c9a4f87\"\u003e\u003ccode\u003e790bb06\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2372\"\u003e#2372\u003c/a\u003e from cclauss/ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/168d8508ae41a5f5f2fb1340b86fde2bfdb8266a\"\u003e\u003ccode\u003e168d850\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into ruff-rules-PT\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/6165d6b6e99dfd15b57896080359a46ba99eacda\"\u003e\u003ccode\u003e6165d6b\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2373\"\u003e#2373\u003c/a\u003e from PyCQA/ci/remove-safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f776259106076faa8a758ebfd4abb3a736493024\"\u003e\u003ccode\u003ef776259\u003c/code\u003e\u003c/a\u003e Remove Safety\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/176ada2694779b6f4a366c7f8a4d788dc93b5d27\"\u003e\u003ccode\u003e176ada2\u003c/code\u003e\u003c/a\u003e Ruff rules PT for pytest\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/3305894bd9338e715a1ac6eb912cf608154ca471\"\u003e\u003ccode\u003e3305894\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2371\"\u003e#2371\u003c/a\u003e from cclauss/ruff-rules-B017-B028-E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1708f3e87ad1b1885e5bddcd29799a9434207738\"\u003e\u003ccode\u003e1708f3e\u003c/code\u003e\u003c/a\u003e Ruff rules B017, B028, and E203\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/1157b58fb70b9166f75f567fdbe45d6fa2cbfc5c\"\u003e\u003ccode\u003e1157b58\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2359\"\u003e#2359\u003c/a\u003e from cclauss/ruff\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/5.13.2...6.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `ruff` from 0.12.8 to 0.12.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/releases\"\u003eruff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.9\u003c/h2\u003e\n\u003ch2\u003eRelease Notes\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Add check for \u003ccode\u003eairflow.secrets.cache.SecretCache\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/17707\"\u003e#17707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Offer a safe fix for multi-digit zeros (\u003ccode\u003eRUF064\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19847\"\u003e#19847\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19755\"\u003e#19755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix false positive for \u003ccode\u003eC420\u003c/code\u003e with attribute, subscript, or slice assignment targets (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19513\"\u003e#19513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix handling of U+001C..U+001F whitespace (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Use lowercase hex characters to match the formatter (\u003ccode\u003ePLE2513\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19808\"\u003e#19808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003elint.future-annotations\u003c/code\u003e link (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19876\"\u003e#19876\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild \u003ccode\u003eriscv64\u003c/code\u003e binaries for release (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd rule code to error description in GitLab output (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19896\"\u003e#19896\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eContributors\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/AlexWaygood\"\u003e\u003ccode\u003e@​AlexWaygood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Gankra\"\u003e\u003ccode\u003e@​Gankra\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MatthewMckee4\"\u003e\u003ccode\u003e@​MatthewMckee4\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/MichaReiser\"\u003e\u003ccode\u003e@​MichaReiser\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PrettyWood\"\u003e\u003ccode\u003e@​PrettyWood\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/RazerM\"\u003e\u003ccode\u003e@​RazerM\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/carljm\"\u003e\u003ccode\u003e@​carljm\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/danparizher\"\u003e\u003ccode\u003e@​danparizher\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dcreager\"\u003e\u003ccode\u003e@​dcreager\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/deliro\"\u003e\u003ccode\u003e@​deliro\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dhruvmanila\"\u003e\u003ccode\u003e@​dhruvmanila\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ember91\"\u003e\u003ccode\u003e@​ember91\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ffgan\"\u003e\u003ccode\u003e@​ffgan\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/harupy\"\u003e\u003ccode\u003e@​harupy\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ibraheemdev\"\u003e\u003ccode\u003e@​ibraheemdev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mtshiba\"\u003e\u003ccode\u003e@​mtshiba\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nguu0123\"\u003e\u003ccode\u003e@​nguu0123\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ntBre\"\u003e\u003ccode\u003e@​ntBre\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/oconnor663\"\u003e\u003ccode\u003e@​oconnor663\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prabhusneha\"\u003e\u003ccode\u003e@​prabhusneha\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md\"\u003eruff's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.12.9\u003c/h2\u003e\n\u003ch3\u003ePreview features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eairflow\u003c/code\u003e] Add check for \u003ccode\u003eairflow.secrets.cache.SecretCache\u003c/code\u003e (\u003ccode\u003eAIR301\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/17707\"\u003e#17707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eruff\u003c/code\u003e] Offer a safe fix for multi-digit zeros (\u003ccode\u003eRUF064\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19847\"\u003e#19847\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19755\"\u003e#19755\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-comprehensions\u003c/code\u003e] Fix false positive for \u003ccode\u003eC420\u003c/code\u003e with attribute, subscript, or slice assignment targets (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19513\"\u003e#19513\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e[\u003ccode\u003eflake8-simplify\u003c/code\u003e] Fix handling of U+001C..U+001F whitespace (\u003ccode\u003eSIM905\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19849\"\u003e#19849\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRule changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e[\u003ccode\u003epylint\u003c/code\u003e] Use lowercase hex characters to match the formatter (\u003ccode\u003ePLE2513\u003c/code\u003e) (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19808\"\u003e#19808\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003elint.future-annotations\u003c/code\u003e link (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19876\"\u003e#19876\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBuild \u003ccode\u003eriscv64\u003c/code\u003e binaries for release (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd rule code to error description in GitLab output (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/pull/19896\"\u003e#19896\u003c/a\u003e)\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/astral-sh/ruff/commit/ef422460de726c5b896c09c364d02a4db24bcaf0\"\u003e\u003ccode\u003eef42246\u003c/code\u003e\u003c/a\u003e Bump 0.12.9 (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19917\"\u003e#19917\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/dc2e8ab3776a7f7ec9ec26be61939f73567a2c13\"\u003e\u003ccode\u003edc2e8ab\u003c/code\u003e\u003c/a\u003e [ty] support \u003ccode\u003ekw_only=True\u003c/code\u003e for \u003ccode\u003edataclass()\u003c/code\u003e and \u003ccode\u003efield()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19677\"\u003e#19677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/9aaa82d037a12e38daebe518ab11c83414f2fe55\"\u003e\u003ccode\u003e9aaa82d\u003c/code\u003e\u003c/a\u003e Feature/build riscv64 bin (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19819\"\u003e#19819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/3288ac2dfbfd3388b6ed99fe9776ea228eecca54\"\u003e\u003ccode\u003e3288ac2\u003c/code\u003e\u003c/a\u003e [ty] Add caching to \u003ccode\u003eCodeGeneratorKind::matches()\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19912\"\u003e#19912\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/1167ed61cf3fa186e852df2d6ec9cb0136dffa80\"\u003e\u003ccode\u003e1167ed6\u003c/code\u003e\u003c/a\u003e [ty] Rename \u003ccode\u003efunctionArgumentNames\u003c/code\u003e to \u003ccode\u003ecallArgumentNames\u003c/code\u003e inlay hint setting...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/2ee47d87b6908a6ba6f672bf48d6f42c17ee3dfe\"\u003e\u003ccode\u003e2ee47d8\u003c/code\u003e\u003c/a\u003e [ty] Default \u003ccode\u003ety.inlayHints.*\u003c/code\u003e server settings to true (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19910\"\u003e#19910\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/d324cedfc2d953f5ed435fc4ba0b1e2d504641c3\"\u003e\u003ccode\u003ed324ced\u003c/code\u003e\u003c/a\u003e [ty] Remove py-fuzzer skips for seeds that are no longer slow (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19906\"\u003e#19906\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/5a570c8e6d227b1f4270987b124e853ccd7b2af3\"\u003e\u003ccode\u003e5a570c8\u003c/code\u003e\u003c/a\u003e [ty] fix deferred name loading in PEP695 generic classes/functions (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19888\"\u003e#19888\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/baadb5a78d7cddf0d876a841f308287a853e81e9\"\u003e\u003ccode\u003ebaadb5a\u003c/code\u003e\u003c/a\u003e [ty] Add some additional type safety to \u003ccode\u003eCycleDetector\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/astral-sh/ruff/issues/19903\"\u003e#19903\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/astral-sh/ruff/commit/df0648aae046f30bd1993323d93091bf4bde385c\"\u003e\u003ccode\u003edf0648a\u003c/code\u003e\u003c/a\u003e [\u003ccode\u003eflake8-blind-except\u003c/code\u003e] Fix \u003ccode\u003eBLE001\u003c/code\u003e false-positive on \u003ccode\u003eraise ... from None\u003c/code\u003e ...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/astral-sh/ruff/compare/0.12.8...0.12.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-cov` from 4.0.0 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\u003ch2\u003e6.1.1 (2025-04-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed breakage that occurs when \u003ccode\u003e--cov-context\u003c/code\u003e and the \u003ccode\u003eno_cover\u003c/code\u003e marker are used together.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e6.1.0 (2025-04-01)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eChange terminal output to use full width lines for the coverage header.\nContributed by Tsvika Shapira in \u003ccode\u003e[#678](https://github.com/pytest-dev/pytest-cov/issues/678) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/678\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eRemoved unnecessary CovFailUnderWarning. Fixes \u003ccode\u003e[#675](https://github.com/pytest-dev/pytest-cov/issues/675) \u0026lt;https://github.com/pytest-dev/pytest-cov/issues/675\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eFixed the term report not using the precision specified via \u003ccode\u003e--cov-precision\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.0 (2024-10-29)\u003c/p\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-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/v4.0.0...v6.2.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-mock` from 3.10.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.14.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/415\"\u003e#415\u003c/a\u003e: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/420\"\u003e#420\u003c/a\u003e: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.13.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/417\"\u003e#417\u003c/a\u003e: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/410\"\u003e#410\u003c/a\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ca href=\"https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\"\u003eWhy you shouldn't invoke setup.py directly\u003c/a\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.12.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003e#390\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev3.11.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.14.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#415](https://github.com/pytest-dev/pytest-mock/issues/415) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/415\u0026gt;\u003c/code\u003e_: \u003ccode\u003eMockType\u003c/code\u003e and \u003ccode\u003eAsyncMockType\u003c/code\u003e can be imported from \u003ccode\u003epytest_mock\u003c/code\u003e for type annotation purposes.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#420](https://github.com/pytest-dev/pytest-mock/issues/420) \u0026lt;https://github.com/pytest-dev/pytest-mock/issues/420\u0026gt;\u003c/code\u003e_: Fixed a regression which would cause \u003ccode\u003emocker.patch.object\u003c/code\u003e to not being properly cleared between tests.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.13.0 (2024-03-21)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#417](https://github.com/pytest-dev/pytest-mock/issues/417) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/417\u0026gt;\u003c/code\u003e_: \u003ccode\u003espy\u003c/code\u003e now has \u003ccode\u003espy_return_list\u003c/code\u003e, which is a list containing all the values returned by the spied function.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epytest-mock\u003c/code\u003e now requires \u003ccode\u003epytest\u0026gt;=6.2.5\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e[#410](https://github.com/pytest-dev/pytest-mock/issues/410) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/410\u0026gt;\u003c/code\u003e\u003cem\u003e: pytest-mock's \u003ccode\u003esetup.py\u003c/code\u003e file is removed.\nIf you relied on this file, e.g. to install pytest using \u003ccode\u003esetup.py install\u003c/code\u003e,\nplease see \u003ccode\u003eWhy you shouldn't invoke setup.py directly \u0026lt;https://blog.ganssle.io/articles/2021/10/setup-py-deprecated.html#summary\u0026gt;\u003c/code\u003e\u003c/em\u003e for alternatives.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.12.0 (2023-10-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDropped support for EOL Python 3.7.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003emocker.resetall()\u003c/code\u003e now also resets mocks created by \u003ccode\u003emocker.create_autospec\u003c/code\u003e (\u003ccode\u003e[#390](https://github.com/pytest-dev/pytest-mock/issues/390)\u003c/code\u003e_).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/390\"\u003e#390\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/390\"\u003epytest-dev/pytest-mock#390\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.1 (2023-06-15)\u003c/h2\u003e\n\u003cp\u003e(This release source code is identical to \u003ccode\u003e3.11.0\u003c/code\u003e except a small internal fix to deployment/CI)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ccode\u003e[#365](https://github.com/pytest-dev/pytest-mock/issues/365)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ccode\u003e[#364](https://github.com/pytest-dev/pytest-mock/issues/364)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/365\"\u003e#365\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/365\"\u003epytest-dev/pytest-mock#365\u003c/a\u003e\n.. _\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/364\"\u003e#364\u003c/a\u003e: \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/364\"\u003epytest-dev/pytest-mock#364\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.11.0 (2023-06-15)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixed introspection for failed \u003ccode\u003eassert_has_calls\u003c/code\u003e (\u003ccode\u003e[#365](https://github.com/pytest-dev/pytest-mock/issues/365)\u003c/code\u003e_).\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eUpdated type annotations for \u003ccode\u003emocker.patch\u003c/code\u003e and \u003ccode\u003emocker.spy\u003c/code\u003e (\u003ccode\u003e[#364](https://github.com/pytest-dev/pytest-mock/issues/364)\u003c/code\u003e_).\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-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.10.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.3.1 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:/...\n\n_Description has been truncated_","html_url":"https://github.com/American-Soccer-Analysis/mls-roster-profiles/pull/12","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/American-Soccer-Analysis%2Fmls-roster-profiles/issues/12","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/12/packages"}},{"old_version":"0.1.8","new_version":"0.3.0","update_type":"minor","path":null,"pr_created_at":"2025-08-12T17:58:46.000Z","version_change":"0.1.8 → 0.3.0","issue":{"uuid":"2740084978","node_id":"PR_kwDOPcfoys6jUmDy","number":1,"state":"open","title":"Bump the development-dependencies group with 12 updates","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":null,"author_association":"NONE","state_reason":null,"created_at":"2025-08-12T17:58:46.000Z","updated_at":"2025-08-12T17:58:47.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"development-dependencies","update_count":12,"packages":[{"name":"pre-commit","old_version":"4.2.0","new_version":"4.3.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"setuptools","old_version":"80.3.0","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"coverage","old_version":"7.8.0","new_version":"7.10.3","repository_url":"https://github.com/nedbat/coveragepy"},{"name":"deepdiff","old_version":"8.4.2","new_version":"8.6.0","repository_url":"https://github.com/seperman/deepdiff"},{"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"},{"name":"pytest-mock","old_version":"3.14.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"urllib3","old_version":"2.2.3","new_version":"2.5.0","repository_url":"https://github.com/urllib3/urllib3"},{"name":"mypy","old_version":"1.15.0","new_version":"1.17.1","repository_url":"https://github.com/python/mypy"},{"name":"types-requests","old_version":"2.32.0.20250328","new_version":"2.32.4.20250809","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"pytest-github-actions-annotate-failures","old_version":"0.1.8","new_version":"0.3.0","repository_url":"https://github.com/pytest-dev/pytest-github-actions-annotate-failures"}],"path":null,"ecosystem":"pip"},"body":"Bumps the development-dependencies group with 12 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.3.0` |\n| [setuptools](https://github.com/pypa/setuptools) | `80.3.0` | `80.9.0` |\n| [coverage](https://github.com/nedbat/coveragepy) | `7.8.0` | `7.10.3` |\n| [deepdiff](https://github.com/seperman/deepdiff) | `8.4.2` | `8.6.0` |\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| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.14.0` | `3.14.1` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.3` | `2.5.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.17.1` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250328` | `2.32.4.20250809` |\n| [pytest-github-actions-annotate-failures](https://github.com/pytest-dev/pytest-github-actions-annotate-failures) | `0.1.8` | `0.3.0` |\n\nUpdates `pre-commit` from 4.2.0 to 4.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pre-commit/pre-commit/releases\"\u003epre-commit's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003epre-commit v4.3.0\u003c/h2\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/blob/main/CHANGELOG.md\"\u003epre-commit's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e4.3.0 - 2025-08-09\u003c/h1\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003elanguage: docker\u003c/code\u003e / \u003ccode\u003elanguage: docker_image\u003c/code\u003e: detect rootless docker.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3446\"\u003e#3446\u003c/a\u003e PR by \u003ca href=\"https://github.com/matthewhughes934\"\u003e\u003ccode\u003e@​matthewhughes934\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/1243\"\u003e#1243\u003c/a\u003e issue by \u003ca href=\"https://github.com/dkolepp\"\u003e\u003ccode\u003e@​dkolepp\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: julia\u003c/code\u003e: avoid \u003ccode\u003estartup.jl\u003c/code\u003e when executing hooks.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e PR by \u003ca href=\"https://github.com/ericphanson\"\u003e\u003ccode\u003e@​ericphanson\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003elanguage: dart\u003c/code\u003e: support latest dart versions which require a higher sdk\nlower bound.\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e PR by \u003ca href=\"https://github.com/bc-lee\"\u003e\u003ccode\u003e@​bc-lee\u003c/code\u003e\u003c/a\u003e.\u003c/li\u003e\n\u003c/ul\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/pre-commit/pre-commit/commit/b74a22d96cca546b8e0bb9f68f1d7d8565205b65\"\u003e\u003ccode\u003eb74a22d\u003c/code\u003e\u003c/a\u003e v4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/cc899de192a5f5614633d86178568cc1c46d999d\"\u003e\u003ccode\u003ecc899de\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3507\"\u003e#3507\u003c/a\u003e from bc-lee/dart-fix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/2a0bcea7570620416a550362d9b2d2b24eb80dd8\"\u003e\u003ccode\u003e2a0bcea\u003c/code\u003e\u003c/a\u003e Downgrade Dart SDK version installed in the CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/f1cc7a445f1adbfc9ea4072e180fbe3054af669b\"\u003e\u003ccode\u003ef1cc7a4\u003c/code\u003e\u003c/a\u003e Make Dart pre-commit hook compatible with the latest Dart SDKs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/72a3b71f0e7b89b78899739aeee2e962914ab649\"\u003e\u003ccode\u003e72a3b71\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3504\"\u003e#3504\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c8925a457afb1d6850c8f105671846bae408aae0\"\u003e\u003ccode\u003ec8925a4\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/a5fe6c500c2c7a17aaa21f0bb91ee7ceecf61968\"\u003e\u003ccode\u003ea5fe6c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3496\"\u003e#3496\u003c/a\u003e from ericphanson/eph/jl-startup\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/6f1f433a9cea94a70828ade95931a703c9a9c82b\"\u003e\u003ccode\u003e6f1f433\u003c/code\u003e\u003c/a\u003e Julia language: skip startup.jl file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/c6817210b1cdbbfbd1b1ff2148edfa15bf4b3c97\"\u003e\u003ccode\u003ec681721\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pre-commit/pre-commit/issues/3499\"\u003e#3499\u003c/a\u003e from pre-commit/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pre-commit/pre-commit/commit/4fd4537bc69e6804998d99e4851a9dbe43e91757\"\u003e\u003ccode\u003e4fd4537\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pre-commit/pre-commit/compare/v4.2.0...v4.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `setuptools` from 80.3.0 to 80.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pypa/setuptools/blob/main/NEWS.rst\"\u003esetuptools's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003ev80.9.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSet a deadline for the removal of pkg_resources later this year (December). (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved reliance on pkg_resources in test_wheel. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.8.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eReplaced more references to pkg_resources with importlib equivalents in wheel odule. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/3085\"\u003e#3085\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRestore explicit LICENSE file. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5001\"\u003e#5001\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved no longer used build dependency on \u003ccode\u003ecoherent.licensed\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5003\"\u003e#5003\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.1\u003c/h1\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eOnly attempt to fetch eggs for unsatisfied requirements. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eIn installer, when discovering egg dists, let metadata discovery search each egg. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4998\"\u003e#4998\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.7.0\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved usage of pkg_resources from installer. Set an official deadline on the installer deprecation to 2025-10-31. (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4997\"\u003e#4997\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4996\"\u003e#4996\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003ev80.6.0\u003c/h1\u003e\n\u003cp\u003eFeatures\u003c/p\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/pypa/setuptools/commit/9c4d383631d3951fcae0afd73b5d08ff5a262976\"\u003e\u003ccode\u003e9c4d383\u003c/code\u003e\u003c/a\u003e Bump version: 80.8.0 → 80.9.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/05cb3c84f1422f3b26ccfb00f4c43886dc55b9bc\"\u003e\u003ccode\u003e05cb3c8\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5014\"\u003e#5014\u003c/a\u003e from pypa/debt/pkg_resources-deadline\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3b0bf5bd43034c448a10e7102788fe710b4bb496\"\u003e\u003ccode\u003e3b0bf5b\u003c/code\u003e\u003c/a\u003e Adjust ignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/9c28cdffd423f83e43dbfd39fc793c251da48585\"\u003e\u003ccode\u003e9c28cdf\u003c/code\u003e\u003c/a\u003e Set a deadline for the removal of pkg_resources later this year (December).\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/a3bfef95193bf0ff78ef6e0fb8c63a3728f443b0\"\u003e\u003ccode\u003ea3bfef9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5013\"\u003e#5013\u003c/a\u003e from DimitriPapadopoulos/ISC\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/64bf9d0ce88a09748f702bd7736d9ec2879aa6ef\"\u003e\u003ccode\u003e64bf9d0\u003c/code\u003e\u003c/a\u003e Enforce ruff/flake8-implicit-str-concat rules (ISC)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/3250c25197b299658cfd4d0db67770fc29b47277\"\u003e\u003ccode\u003e3250c25\u003c/code\u003e\u003c/a\u003e Fix broken link in docs (\u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/4947\"\u003e#4947\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/5ccf50e01ab0d303f524c065f2cb51042b34bc55\"\u003e\u003ccode\u003e5ccf50e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pypa/setuptools/issues/5006\"\u003e#5006\u003c/a\u003e from pypa/feature/remove-more-pkg_resources\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/134e587c0ba0b59e1661f08a45e6d6d1ecd24329\"\u003e\u003ccode\u003e134e587\u003c/code\u003e\u003c/a\u003e Suppress nitpicky typecheck in pyright.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pypa/setuptools/commit/0bf2663a19f2d947697997d125c3c880df2011b7\"\u003e\u003ccode\u003e0bf2663\u003c/code\u003e\u003c/a\u003e Add news fragment.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pypa/setuptools/compare/v80.3.0...v80.9.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.0 to 7.10.3\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.10.3 — 2025-08-10\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFixes for \u003ccode\u003epatch = subprocess\u003c/code\u003e:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses spawned yet more subprocesses simultaneously, some coverage\ncould be missed.  This is now fixed, closing \u003ccode\u003eissue 2024\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eIf subprocesses were created in other directories, their data files were\nstranded there and not combined into the totals, as described in \u003ccode\u003eissue 2025\u003c/code\u003e_.  This is now fixed.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOn Windows (or maybe only some Windows?) the patch would fail with a\n\u003ccode\u003eModuleNotFound\u003c/code\u003e error trying to import coverage.  This is now fixed,\nclosing \u003ccode\u003eissue 2022\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eOriginally only options set in the coverage configuration file would apply\nto subprocesses.  Options set on the \u003ccode\u003ecoverage run\u003c/code\u003e command line (such as\n\u003ccode\u003e--branch\u003c/code\u003e) wouldn't be communicated to the subprocesses.  This could\nlead to combining failures, as described in \u003ccode\u003eissue 2021\u003c/code\u003e_. Now the entire\nconfiguration is used in subprocesses, regardless of its origin.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded \u003ccode\u003edebug=patch\u003c/code\u003e to help diagnose problems.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: really close all SQLite databases, even in-memory ones. Closes \u003ccode\u003eissue 2017\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2017: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2017\"\u003enedbat/coveragepy#2017\u003c/a\u003e\n.. _issue 2021: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2021\"\u003enedbat/coveragepy#2021\u003c/a\u003e\n.. _issue 2022: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2022\"\u003enedbat/coveragepy#2022\u003c/a\u003e\n.. _issue 2024: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2024\"\u003enedbat/coveragepy#2024\u003c/a\u003e\n.. _issue 2025: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2025\"\u003enedbat/coveragepy#2025\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-2:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.2 — 2025-08-03\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix: some code with NOP bytecodes could report missing branches that are\nactually executed. This is now fixed, closing \u003ccode\u003eissue 1999\u003c/code\u003e_. Python 3.9\nstill shows the problem.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 1999: \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/1999\"\u003enedbat/coveragepy#1999\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-10-1:\u003c/p\u003e\n\u003ch2\u003eVersion 7.10.1 — 2025-07-27\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/nedbat/coveragepy/commit/0691ce5d08ae2eb6cae51f879ffe609aeb14d221\"\u003e\u003ccode\u003e0691ce5\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.10.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/34c9aca951d2c89ab0af5343a9a1c5cc7b00aefd\"\u003e\u003ccode\u003e34c9aca\u003c/code\u003e\u003c/a\u003e docs: prep for 7.10.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/fd83f218e21058f43c7544a3cb01ce84714965f7\"\u003e\u003ccode\u003efd83f21\u003c/code\u003e\u003c/a\u003e style: lists for homogenous collections\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/d9618002dde634898613f5935092cefbb29035f0\"\u003e\u003ccode\u003ed961800\u003c/code\u003e\u003c/a\u003e docs: remove an unused reference\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/697d4bb3950b31dc7f5d39d9dcf67fabde9db241\"\u003e\u003ccode\u003e697d4bb\u003c/code\u003e\u003c/a\u003e fix: subprocesses inherit the entire configuration. \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2021\"\u003e#2021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/b6db3b7e52e4820bd1d3e43b29f700a5f31f3937\"\u003e\u003ccode\u003eb6db3b7\u003c/code\u003e\u003c/a\u003e build: show the total during local metacov\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/cfbceb584b18f87fdc6228fc4a8202d789e030cc\"\u003e\u003ccode\u003ecfbceb5\u003c/code\u003e\u003c/a\u003e docs: reverted \u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2018\"\u003e#2018\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/264bbd3d2c2ee9eca32248c5874423c0b6ff6287\"\u003e\u003ccode\u003e264bbd3\u003c/code\u003e\u003c/a\u003e refactor: more patch logging\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/3ecdfafc74bd2b007b561e6ac6b080c04e598b06\"\u003e\u003ccode\u003e3ecdfaf\u003c/code\u003e\u003c/a\u003e chore: bump the action-dependencies group with 2 updates (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2026\"\u003e#2026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/nedbat/coveragepy/commit/41a225698710c9005da822978930be69312d1676\"\u003e\u003ccode\u003e41a2256\u003c/code\u003e\u003c/a\u003e fix: revert \u0026quot;thread safe resume (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2018\"\u003e#2018\u003c/a\u003e)\u0026quot; (\u003ca href=\"https://redirect.github.com/nedbat/coveragepy/issues/2027\"\u003e#2027\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/nedbat/coveragepy/compare/7.8.0...7.10.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `deepdiff` from 8.4.2 to 8.6.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/seperman/deepdiff/releases\"\u003edeepdiff's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.5.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eUpdating deprecated pydantic calls\u003c/li\u003e\n\u003cli\u003eSwitching to pyproject.toml\u003c/li\u003e\n\u003cli\u003eFix for moving nested tables when using iterable_compare_func.  by\u003c/li\u003e\n\u003cli\u003eFix recursion depth limit when hashing numpy.datetime64\u003c/li\u003e\n\u003cli\u003eMoving from legacy setuptools use to pyproject.toml\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\u003eSee full diff in \u003ca href=\"https://github.com/seperman/deepdiff/commits\"\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\nUpdates `pytest-mock` from 3.14.0 to 3.14.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-mock/releases\"\u003epytest-mock's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.14.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/pull/503\"\u003e#503\u003c/a\u003e: Python 3.14 is now officially supported.\u003c/li\u003e\n\u003c/ul\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/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst\"\u003epytest-mock's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.14.1 (2025-05-26)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#503](https://github.com/pytest-dev/pytest-mock/issues/503) \u0026lt;https://github.com/pytest-dev/pytest-mock/pull/503\u0026gt;\u003c/code\u003e_: Python 3.14 is now officially supported.\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-mock/commit/34dd61aa459520e096c70eb8a573700fc17c5de8\"\u003e\u003ccode\u003e34dd61a\u003c/code\u003e\u003c/a\u003e Release 3.14.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/299adb96640a51a48b5af9a69064b9edd7a9fe90\"\u003e\u003ccode\u003e299adb9\u003c/code\u003e\u003c/a\u003e Add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/503\"\u003e#503\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/f5fcef726a8ba4a54cd138321ae9771648a0bc8a\"\u003e\u003ccode\u003ef5fcef7\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/504\"\u003e#504\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/bae64d8c8ef44a7075d63f1d7f6ac36b76b61ce4\"\u003e\u003ccode\u003ebae64d8\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/502\"\u003e#502\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/824f334cc4b39eb05c0093fc43411ada3fdc8300\"\u003e\u003ccode\u003e824f334\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/501\"\u003e#501\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/db1add63034430d66835c78992c0ed9b1e331cfd\"\u003e\u003ccode\u003edb1add6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/500\"\u003e#500\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/48ac8746b6587457becf31d1272947de6d65e0d0\"\u003e\u003ccode\u003e48ac874\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/499\"\u003e#499\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/fe7ad9aab6a8e15e5762d5bdc85402249f2ca7ef\"\u003e\u003ccode\u003efe7ad9a\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/498\"\u003e#498\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/7857e608242aeb3d4b771296ee41d258b1a13838\"\u003e\u003ccode\u003e7857e60\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/497\"\u003e#497\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-mock/commit/a8b97ea2ca86e9cfa553e395cf20352a881d8eaf\"\u003e\u003ccode\u003ea8b97ea\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-mock/issues/496\"\u003e#496\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.14.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-xdist` from 3.6.1 to 3.8.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst\"\u003epytest-xdist's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003epytest-xdist 3.8.0 (2025-06-30)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1083](https://github.com/pytest-dev/pytest-xdist/issues/1083) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1083\u0026gt;\u003c/code\u003e_: Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e option to control whether to automatically reorder tests in loadscope for tests where relative ordering matters. This only applies when using \u003ccode\u003eloadscope\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eFor example, [test_file_1, test_file_2, ..., test_file_n] are given as input test files, if \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e is used, for either worker, the \u003ccode\u003etest_file_a\u003c/code\u003e will be executed before \u003ccode\u003etest_file_b\u003c/code\u003e only if \u003ccode\u003ea \u0026lt; b\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eThe default behavior is to reorder the tests to maximize the number of tests that can be executed in parallel.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003epytest-xdist 3.7.0 (2025-05-26)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1142](https://github.com/pytest-dev/pytest-xdist/issues/1142) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1142\u0026gt;\u003c/code\u003e_: Added support for Python 3.13.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1144](https://github.com/pytest-dev/pytest-xdist/issues/1144) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1144\u0026gt;\u003c/code\u003e_: The internal \u003ccode\u003esteal\u003c/code\u003e command is now atomic - it unschedules either all requested tests or none.\u003c/p\u003e\n\u003cp\u003eThis is a prerequisite for group/scope support in the \u003ccode\u003eworksteal\u003c/code\u003e scheduler, so test groups won't be broken up incorrectly.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1170](https://github.com/pytest-dev/pytest-xdist/issues/1170) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1170\u0026gt;\u003c/code\u003e_: Add the \u003ccode\u003e--px\u003c/code\u003e arg to create proxy gateways.\u003c/p\u003e\n\u003cp\u003eProxy gateways are passed to additional gateways using the \u003ccode\u003evia\u003c/code\u003e keyword.\nThey can serve as a way to run multiple workers on remote machines.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1200](https://github.com/pytest-dev/pytest-xdist/issues/1200) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1200\u0026gt;\u003c/code\u003e_: Now multiple \u003ccode\u003exdist_group\u003c/code\u003e markers are considered when assigning tests to groups (order does not matter).\u003c/p\u003e\n\u003cp\u003ePreviously, only the last marker would assign a test to a group, but now if a test has multiple \u003ccode\u003exdist_group\u003c/code\u003e marks applied (for example via parametrization or via fixtures), they are merged to make a new group.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRemovals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#1162](https://github.com/pytest-dev/pytest-xdist/issues/1162) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1162\u0026gt;\u003c/code\u003e_: Dropped support for EOL Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eTrivial Changes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1092](https://github.com/pytest-dev/pytest-xdist/issues/1092) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1092\u0026gt;\u003c/code\u003e_: Update an error message to better indicate where users should go for more information.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003e[#1190](https://github.com/pytest-dev/pytest-xdist/issues/1190) \u0026lt;https://github.com/pytest-dev/pytest-xdist/issues/1190\u0026gt;\u003c/code\u003e_: Switched to using a SPDX license identifier introduced in PEP 639.\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-xdist/commit/1e3e4dc16523c8a8f6c67d95a950166420718c99\"\u003e\u003ccode\u003e1e3e4dc\u003c/code\u003e\u003c/a\u003e Release 3.8.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/600aad575a4e4382855145b0c464d51b8f0b7242\"\u003e\u003ccode\u003e600aad5\u003c/code\u003e\u003c/a\u003e Ensure all xdist group names are strings (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1216\"\u003e#1216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/9d7ba5b5fbbbe26793fbfb7cb1903eb69425cf09\"\u003e\u003ccode\u003e9d7ba5b\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e--no-loadscope-reorder\u003c/code\u003e and \u003ccode\u003e--loadscope-reorder\u003c/code\u003e options (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1217\"\u003e#1217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/532f07fb181bb1546eda79bbe6b46bdb56c699e1\"\u003e\u003ccode\u003e532f07f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1210\"\u003e#1210\u003c/a\u003e from pytest-dev/pre-commit-ci-update-config\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/0883ad085e0cf039c8ae13eb2789c1076544d225\"\u003e\u003ccode\u003e0883ad0\u003c/code\u003e\u003c/a\u003e Fix Path usage in \u003ccode\u003etest_rsync_roots_no_roots\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/58a51bc14015d211761e44c2bdacab09c3893668\"\u003e\u003ccode\u003e58a51bc\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/59a2ad0150697b9ff837f3ae8dcf6e074d5a114b\"\u003e\u003ccode\u003e59a2ad0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1220\"\u003e#1220\u003c/a\u003e from pytest-dev/dependabot/github_actions/github-act...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/d42b9c72044855236c68286ca3bdb34486a05872\"\u003e\u003ccode\u003ed42b9c7\u003c/code\u003e\u003c/a\u003e build(deps): bump hynek/build-and-inspect-python-package\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/ebfcb99072aed3503fda5175245f28895a0204bb\"\u003e\u003ccode\u003eebfcb99\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1206\"\u003e#1206\u003c/a\u003e from pytest-dev/release-3.7.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-xdist/commit/23b7fd6054298a530b02b33d07007b3082a36277\"\u003e\u003ccode\u003e23b7fd6\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-xdist/issues/1207\"\u003e#1207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `urllib3` from 2.2.3 to 2.5.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/releases\"\u003eurllib3's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.5.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eSecurity issues\u003c/h1\u003e\n\u003cp\u003eurllib3 2.5.0 fixes two moderate security issues:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePool managers now properly control redirects when \u003ccode\u003eretries\u003c/code\u003e is passed — CVE-2025-50181 reported by \u003ca href=\"https://github.com/sandumjacob\"\u003e\u003ccode\u003e@​sandumjacob\u003c/code\u003e\u003c/a\u003e (5.3 Medium, GHSA-pq67-6m6q-mj2v)\u003c/li\u003e\n\u003cli\u003eRedirects are now controlled by urllib3 in the Node.js runtime — CVE-2025-50182 (5.3 Medium, GHSA-48p4-8xcf-vxj5)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14. See \u003ca href=\"https://peps.python.org/pep-0784/\"\u003ePEP 784\u003c/a\u003e for more information. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3610\"\u003e#3610\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3612\"\u003e#3612\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3581\"\u003e#3581\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3615\"\u003e#3615\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 urllib3 is fundraising for HTTP/2 support\u003c/h2\u003e\n\u003cp\u003e\u003ca href=\"https://sethmlarson.dev/urllib3-is-fundraising-for-http2-support\"\u003eurllib3 is raising ~$40,000 USD\u003c/a\u003e to release HTTP/2 support and ensure long-term sustainable maintenance of the project after a sharp decline in financial support. If your company or organization uses Python and would benefit from HTTP/2 support in Requests, pip, cloud SDKs, and thousands of other projects \u003ca href=\"https://opencollective.com/urllib3\"\u003eplease consider contributing financially\u003c/a\u003e to ensure HTTP/2 support is developed sustainably and maintained for the long-haul.\u003c/p\u003e\n\u003cp\u003eThank you for your support.\u003c/p\u003e\n\u003ch1\u003eFeatures\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3522\"\u003e#3522\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3567\"\u003e#3567\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3571\"\u003e#3571\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eBugfixes\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3555\"\u003e#3555\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eMisc\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3550\"\u003e#3550\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3566\"\u003e#3566\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/urllib3/urllib3/blob/main/CHANGES.rst\"\u003eurllib3's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.5.0 (2025-06-18)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for the \u003ccode\u003ecompression.zstd\u003c/code\u003e module that is new in Python 3.14.\nSee \u003ccode\u003ePEP 784 \u0026lt;https://peps.python.org/pep-0784/\u0026gt;\u003c/code\u003e_ for more information. (\u003ccode\u003e[#3610](https://github.com/urllib3/urllib3/issues/3610) \u0026lt;https://github.com/urllib3/urllib3/issues/3610\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded support for version 0.5 of \u003ccode\u003ehatch-vcs\u003c/code\u003e (\u003ccode\u003e[#3612](https://github.com/urllib3/urllib3/issues/3612) \u0026lt;https://github.com/urllib3/urllib3/issues/3612\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a security issue where restricting the maximum number of followed\nredirects at the \u003ccode\u003eurllib3.PoolManager\u003c/code\u003e level via the \u003ccode\u003eretries\u003c/code\u003e parameter\ndid not work.\u003c/li\u003e\n\u003cli\u003eMade the Node.js runtime respect redirect parameters such as \u003ccode\u003eretries\u003c/code\u003e\nand \u003ccode\u003eredirects\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised exception for \u003ccode\u003eHTTPResponse.shutdown\u003c/code\u003e on a connection already released to the pool. (\u003ccode\u003e[#3581](https://github.com/urllib3/urllib3/issues/3581) \u0026lt;https://github.com/urllib3/urllib3/issues/3581\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eFixed incorrect \u003ccode\u003eCONNECT\u003c/code\u003e statement when using an IPv6 proxy with \u003ccode\u003econnection_from_host\u003c/code\u003e. Previously would not be wrapped in \u003ccode\u003e[]\u003c/code\u003e. (\u003ccode\u003e[#3615](https://github.com/urllib3/urllib3/issues/3615) \u0026lt;https://github.com/urllib3/urllib3/issues/3615\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.4.0 (2025-04-10)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eApplied PEP 639 by specifying the license fields in pyproject.toml. (\u003ccode\u003e[#3522](https://github.com/urllib3/urllib3/issues/3522) \u0026lt;https://github.com/urllib3/urllib3/issues/3522\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eUpdated exceptions to save and restore more properties during the pickle/serialization process. (\u003ccode\u003e[#3567](https://github.com/urllib3/urllib3/issues/3567) \u0026lt;https://github.com/urllib3/urllib3/issues/3567\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdded \u003ccode\u003everify_flags\u003c/code\u003e option to \u003ccode\u003ecreate_urllib3_context\u003c/code\u003e with a default of \u003ccode\u003eVERIFY_X509_PARTIAL_CHAIN\u003c/code\u003e and \u003ccode\u003eVERIFY_X509_STRICT\u003c/code\u003e for Python 3.13+. (\u003ccode\u003e[#3571](https://github.com/urllib3/urllib3/issues/3571) \u0026lt;https://github.com/urllib3/urllib3/issues/3571\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed a bug with partial reads of streaming data in Emscripten. (\u003ccode\u003e[#3555](https://github.com/urllib3/urllib3/issues/3555) \u0026lt;https://github.com/urllib3/urllib3/issues/3555\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSwitched to uv for installing development dependecies. (\u003ccode\u003e[#3550](https://github.com/urllib3/urllib3/issues/3550) \u0026lt;https://github.com/urllib3/urllib3/issues/3550\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eRemoved the \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e asset from GitHub releases. Attestation of release files since v2.3.0 can be found on PyPI. (\u003ccode\u003e[#3566](https://github.com/urllib3/urllib3/issues/3566) \u0026lt;https://github.com/urllib3/urllib3/issues/3566\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e2.3.0 (2024-12-22)\u003c/h1\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/urllib3/urllib3/commit/aaab4eccc10c965897540b21e15f11859d0b62e7\"\u003e\u003ccode\u003eaaab4ec\u003c/code\u003e\u003c/a\u003e Release 2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/7eb4a2aafe49a279c29b6d1f0ed0f42e9736194f\"\u003e\u003ccode\u003e7eb4a2a\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/f05b1329126d5be6de501f9d1e3e36738bc08857\"\u003e\u003ccode\u003ef05b132\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/d03fe327a71d09728512217149f269763671f296\"\u003e\u003ccode\u003ed03fe32\u003c/code\u003e\u003c/a\u003e Fix HTTP tunneling with IPv6 in older Python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/11661e9bb4278e43d081f47a516e287a928c2206\"\u003e\u003ccode\u003e11661e9\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 3.28.0 to 3.29.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3624\"\u003e#3624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/6a0ecc6b16fe30f721021b44a81d19615098c71e\"\u003e\u003ccode\u003e6a0ecc6\u003c/code\u003e\u003c/a\u003e Update v2 migration guide to 2.4.0 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3621\"\u003e#3621\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/8e32e60d9024c05bc6f7adda08bdf6c539d0b0d4\"\u003e\u003ccode\u003e8e32e60\u003c/code\u003e\u003c/a\u003e Raise exception for shutdown on a connection already released to the pool (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3\"\u003e#3\u003c/a\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/9996e0fbf90b77083ad3c73737a6c6395703faa9\"\u003e\u003ccode\u003e9996e0f\u003c/code\u003e\u003c/a\u003e Fix emscripten CI for Chrome 137+ (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3599\"\u003e#3599\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/4fd1a99a59725faf0efc946ce3b6bc9a194420af\"\u003e\u003ccode\u003e4fd1a99\u003c/code\u003e\u003c/a\u003e Bump RECENT_DATE (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3617\"\u003e#3617\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/urllib3/urllib3/commit/c4b5917e911a90c8bf279448df8952a682294135\"\u003e\u003ccode\u003ec4b5917\u003c/code\u003e\u003c/a\u003e Add support for the new \u003ccode\u003ecompression.zstd\u003c/code\u003e module in Python 3.14 (\u003ca href=\"https://redirect.github.com/urllib3/urllib3/issues/3611\"\u003e#3611\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/urllib3/urllib3/compare/2.2.3...2.5.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy` from 1.15.0 to 1.17.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/mypy/blob/master/CHANGELOG.md\"\u003emypy's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch3\u003eMypy 1.17.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19485\"\u003e19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19428\"\u003e19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrevent a crash when InitVar is redefined with a method in a subclass (Stanislav Terliakov, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/19453\"\u003e19453\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAcknowledgements\u003c/h3\u003e\n\u003cp\u003eThanks to all mypy contributors who contributed to this release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAlexey Makridenko\u003c/li\u003e\n\u003cli\u003eBrian Schubert\u003c/li\u003e\n\u003cli\u003eChad Dombrova\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eCharlie Denton\u003c/li\u003e\n\u003cli\u003eCharulata\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eCoolCat467\u003c/li\u003e\n\u003cli\u003eDonal Burns\u003c/li\u003e\n\u003cli\u003eGuy Wilson\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003ejohnthagen\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eŁukasz Kwieciński\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003eMikhail Golubev\u003c/li\u003e\n\u003cli\u003eSebastian Rittau\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003ewyattscarpenter\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eI’d also like to thank my employer, Dropbox, for supporting mypy development.\u003c/p\u003e\n\u003ch2\u003eMypy 1.16\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.16 to the Python Package Index (\u003ca href=\"https://pypi.org/project/mypy/\"\u003ePyPI\u003c/a\u003e).\nMypy is a static type checker for Python. This release includes new features and bug fixes.\nYou can install it as follows:\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003epython3 -m pip install -U mypy\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eYou can read the full documentation for this release on \u003ca href=\"http://mypy.readthedocs.io\"\u003eRead the Docs\u003c/a\u003e.\u003c/p\u003e\n\u003ch3\u003eDifferent Property Getter and Setter Types\u003c/h3\u003e\n\u003cp\u003eMypy now supports using different types for a property getter and setter:\u003c/p\u003e\n\u003cpre lang=\"python\"\u003e\u003ccode\u003eclass A:\n    _value: int\n\u0026lt;/tr\u0026gt;\u0026lt;/table\u0026gt; \n\u003c/code\u003e\u003c/pre\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/python/mypy/commit/acb29831e286bbccde37c03bc75381f40a5fdc9e\"\u003e\u003ccode\u003eacb2983\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/933c913fbe6d2fbf277ff8d6b2f2298f0f84be64\"\u003e\u003ccode\u003e933c913\u003c/code\u003e\u003c/a\u003e Retain \u003ccode\u003eNone\u003c/code\u003e as constraints bottom if no bottoms were provided (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19485\"\u003e#19485\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/5f4428f0286df58169d2f34f4f86561ad617538b\"\u003e\u003ccode\u003e5f4428f\u003c/code\u003e\u003c/a\u003e Fix \u0026quot;ignored exception in \u003ccode\u003ehasattr\u003c/code\u003e\u0026quot; in dmypy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19428\"\u003e#19428\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/88fdeaae0abc92d605fc475fd153b4ad5b239310\"\u003e\u003ccode\u003e88fdeaa\u003c/code\u003e\u003c/a\u003e Prevent a crash when InitVar is redefined with a method in a subclass (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19453\"\u003e#19453\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/e44d14f8e52a8890d08726ee753c8754edefd649\"\u003e\u003ccode\u003ee44d14f\u003c/code\u003e\u003c/a\u003e Bump version to 1.17.1+dev\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/0260991f6b055110c3df36bd5539d4f4489bf153\"\u003e\u003ccode\u003e0260991\u003c/code\u003e\u003c/a\u003e Update version string\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3901aa2f9523ce55e08d94c1716028d840398753\"\u003e\u003ccode\u003e3901aa2\u003c/code\u003e\u003c/a\u003e Updates to 1.17 changelog (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19436\"\u003e#19436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/7d133961a7e759aab84223bf8038b9489daaa93c\"\u003e\u003ccode\u003e7d13396\u003c/code\u003e\u003c/a\u003e Initial changelog for 1.17 release (\u003ca href=\"https://redirect.github.com/python/mypy/issues/19427\"\u003e#19427\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a182dec997b418b925fe0c28575c50debba0bb3a\"\u003e\u003ccode\u003ea182dec\u003c/code\u003e\u003c/a\u003e Combine the revealed types of multiple iteration steps in a more robust manne...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/ab4fd57d45b7f81cf281b17b7d3697ac9f79bc15\"\u003e\u003ccode\u003eab4fd57\u003c/code\u003e\u003c/a\u003e Improve the handling of \u0026quot;iteration dependent\u0026quot; errors and notes in finally cla...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.15.0...v1.17.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `types-requests` from 2.32.0.20250328 to 2.32.4.20250809\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/typeshed-internal/stub_uploader/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest-github-actions-annotate-failures` from 0.1.8 to 0.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/releases\"\u003epytest-github-actions-annotate-failures's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.3.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.0\"\u003ehttps://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.2.0...v0.3.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/pytest-dev/pytest-github-actions-annotate-failures/blob/main/CHANGELOG.md\"\u003epytest-github-actions-annotate-failures's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.3.0 (2025-01-17)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eTest on Python 3.13 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport pytest 7.4+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire Python 3.8+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/87\"\u003e#87\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRequire pytest 6+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/86\"\u003e#86\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSpeed up CI and testing \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/93\"\u003e#93\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse Ruff formatter \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse dependency-groups for tests \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd GitHub Attestations \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.2.0 (2023-05-04)\u003c/h2\u003e\n\u003ch3\u003eIncompatible changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRequire python 3.7+ \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/66\"\u003e#66\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eOther changes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix publish package workflow \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/74\"\u003e#74\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHandle cases where pytest itself fails \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/70\"\u003e#70\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/edgarrmondragon\"\u003e\u003ccode\u003e@​edgarrmondragon\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdopt PEP-621 for packaging \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/65\"\u003e#65\u003c/a\u003e (thanks to \u003ca href=\"https://github.com/ssbarnea\"\u003e\u003ccode\u003e@​ssbarnea\u003c/code\u003e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump pre-commit/action from 2.0.0 to 3.0.0 \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/56\"\u003e#56\u003c/a\u003e\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-github-actions-annotate-failures/commit/f07eea3600b8132286c57f3ec6e4d40da6d80ece\"\u003e\u003ccode\u003ef07eea3\u003c/code\u003e\u003c/a\u003e ci: id-token, not token (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/104\"\u003e#104\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/739d5d436ebcc4255b515641334b55b49348c6c0\"\u003e\u003ccode\u003e739d5d4\u003c/code\u003e\u003c/a\u003e ci: token permissions (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/dfe556ccc7db703e5e33c6ab94d433847b57bfba\"\u003e\u003ccode\u003edfe556c\u003c/code\u003e\u003c/a\u003e ci: missing needs in deploy (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/102\"\u003e#102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/f5a1662d6d1a33b877376cd0cf74173a12a980de\"\u003e\u003ccode\u003ef5a1662\u003c/code\u003e\u003c/a\u003e chore: release 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/101\"\u003e#101\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5da3a466611d782772dbb32cdf934b9c0edb7edc\"\u003e\u003ccode\u003e5da3a46\u003c/code\u003e\u003c/a\u003e chore: prepare for 0.3 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/98\"\u003e#98\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/c3c29e94cb150cca9b913d8af41538aacde55b84\"\u003e\u003ccode\u003ec3c29e9\u003c/code\u003e\u003c/a\u003e ci: add github attestations (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/100\"\u003e#100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/5f93cf9f53cb973821f2fc3a2abbd2fd75280ea8\"\u003e\u003ccode\u003e5f93cf9\u003c/code\u003e\u003c/a\u003e chore: use dependency-groups (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/99\"\u003e#99\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/b18bbb5148762b3c31e6f9462a8e457c5b28a5c3\"\u003e\u003ccode\u003eb18bbb5\u003c/code\u003e\u003c/a\u003e ci: add 3.13 (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/89\"\u003e#89\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/fd623c13147eb6b48a87f1c44ae69c15ae976be8\"\u003e\u003ccode\u003efd623c1\u003c/code\u003e\u003c/a\u003e fix: support Pytest 7.4+ (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/97\"\u003e#97\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/commit/e4336fbceb92e1673967b1f1bd9ca50ac947d7ae\"\u003e\u003ccode\u003ee4336fb\u003c/code\u003e\u003c/a\u003e Bump Ruff and use formatter (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-github-actions-annotate-failures/issues/96\"\u003e#96\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-github-actions-annotate-failures/compare/v0.1.8...v0.3.0\"\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/autocode07/python-poetry__poetry.fee7d0d2/pull/1","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/autocode07%2Fpython-poetry__poetry.fee7d0d2/issues/1","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1/packages"}}]}