{"id":9416,"name":"hvac","ecosystem":"pip","repository_url":"https://github.com/hvac/hvac","issues_count":36,"created_at":"2025-06-06T22:34:31.871Z","updated_at":"2025-06-06T22:34:31.871Z","purl":"pkg:pypi/hvac","metadata":{"id":2762353,"name":"hvac","ecosystem":"pypi","description":"HashiCorp Vault API client","homepage":"https://github.com/hvac/hvac","licenses":"Apache-2.0","normalized_licenses":["Apache-2.0"],"repository_url":"https://github.com/hvac/hvac","keywords_array":["hashicorp","vault"],"namespace":null,"versions_count":72,"first_release_published_at":"2015-05-17T10:09:13.000Z","latest_release_published_at":"2024-06-18T14:46:05.000Z","latest_release_number":"2.3.0","last_synced_at":"2025-06-07T06:01:07.809Z","created_at":"2022-04-10T11:16:24.727Z","updated_at":"2025-06-07T06:01:07.809Z","registry_url":"https://pypi.org/project/hvac/","install_command":"pip install hvac --index-url https://pypi.org/simple","documentation_url":"https://hvac.readthedocs.io/en/stable/overview.html","metadata":{"funding":null,"documentation":"https://hvac.readthedocs.io/en/stable/overview.html","classifiers":["License :: OSI Approved :: Apache Software License","Programming Language :: Python","Programming Language :: Python :: 3","Programming Language :: Python :: 3.10","Programming Language :: Python :: 3.11","Programming Language :: Python :: 3.12","Programming Language :: Python :: 3.8","Programming Language :: Python :: 3.9","Programming Language :: Python :: Implementation :: CPython"],"normalized_name":"hvac"},"repo_metadata":{"id":31561338,"uuid":"35126062","full_name":"hvac/hvac","owner":"hvac","description":":lock: Python 3.X client for HashiCorp Vault","archived":false,"fork":false,"pushed_at":"2024-08-10T20:57:46.000Z","size":2722,"stargazers_count":1222,"open_issues_count":159,"forks_count":385,"subscribers_count":25,"default_branch":"main","last_synced_at":"2024-10-29T15:05:03.435Z","etag":null,"topics":["api","client","hacktoberfest","hashicorp","python","vault"],"latest_commit_sha":null,"homepage":"https://python-hvac.org","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/hvac.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2015-05-05T21:56:50.000Z","updated_at":"2024-10-29T10:15:46.000Z","dependencies_parsed_at":"2023-10-14T20:35:29.502Z","dependency_job_id":"ed40f9b3-1c2c-4ae7-a289-8a36035a041a","html_url":"https://github.com/hvac/hvac","commit_stats":{"total_commits":1034,"total_committers":198,"mean_commits":5.222222222222222,"dds":0.8172147001934236,"last_synced_commit":"91610440581bbb543f1eff02650f1a996f263e4c"},"previous_names":["ianunruh/hvac"],"tags_count":67,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hvac","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":222090770,"owners_count":16929471,"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":"hvac","name":"hvac","uuid":"41373505","kind":"organization","description":"Collection of Python tools for use with HashiCorp's Vault","email":"admin@python-hvac.org","website":"https://python-hvac.org","location":null,"twitter":null,"company":null,"icon_url":"https://avatars.githubusercontent.com/u/41373505?v=4","repositories_count":2,"last_synced_at":"2023-03-01T17:50:26.201Z","metadata":{"has_sponsors_listing":false},"html_url":"https://github.com/hvac","funding_links":[],"total_stars":null,"followers":null,"following":null,"created_at":"2022-11-12T14:11:48.364Z","updated_at":"2023-03-01T17:50:26.239Z","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hvac","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/hvac/repositories"},"tags":[{"name":"v2.1.0","sha":"6e47552b12573bb150a042922031bf95e4231759","kind":"commit","published_at":"2024-01-03T16:33:37.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v2.1.0","html_url":"https://github.com/hvac/hvac/releases/tag/v2.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v2.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v2.1.0/manifests"},{"name":"v2.0.0","sha":"91610440581bbb543f1eff02650f1a996f263e4c","kind":"commit","published_at":"2023-10-20T16:23:26.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v2.0.0","html_url":"https://github.com/hvac/hvac/releases/tag/v2.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v2.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v2.0.0/manifests"},{"name":"v1.2.1","sha":"6ae1d2148857e792bf5e03c848788b6002687d66","kind":"commit","published_at":"2023-09-09T15:58:18.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.2.1","html_url":"https://github.com/hvac/hvac/releases/tag/v1.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.2.1/manifests"},{"name":"v1.2.0","sha":"e99fd37c67780c9579380e1aa4b9ac269b49dd2d","kind":"commit","published_at":"2023-09-06T03:20:39.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.2.0","html_url":"https://github.com/hvac/hvac/releases/tag/v1.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.2.0/manifests"},{"name":"v1.1.1","sha":"31aca14a73ba83a0075d69c0781bb39b51ced5a3","kind":"commit","published_at":"2023-06-17T20:04:20.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.1.1","html_url":"https://github.com/hvac/hvac/releases/tag/v1.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.1.1/manifests"},{"name":"v1.1.0","sha":"564d94e686637d7512cddf0589b7f5e299393750","kind":"commit","published_at":"2023-03-06T14:03:12.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.1.0","html_url":"https://github.com/hvac/hvac/releases/tag/v1.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.1.0/manifests"},{"name":"v1.0.2","sha":"d25c8dabb74d568a1348ad8ec841abaacf7bb73a","kind":"commit","published_at":"2022-09-19T01:06:33.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.0.2","html_url":"https://github.com/hvac/hvac/releases/tag/v1.0.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.2/manifests"},{"name":"v1.0.1","sha":"a5135370c5c403cc1a7af6d75ca9b234a4ff8ac5","kind":"commit","published_at":"2022-09-18T16:54:07.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.0.1","html_url":"https://github.com/hvac/hvac/releases/tag/v1.0.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.1/manifests"},{"name":"v1.0.0","sha":"4a4b26c8abdf4bc4f8d786ad1e24068eec57faa6","kind":"commit","published_at":"2022-09-16T01:37:51.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v1.0.0","html_url":"https://github.com/hvac/hvac/releases/tag/v1.0.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v1.0.0/manifests"},{"name":"v0.11.2","sha":"ec048ded30d21c13c21cfa950d148c8bfc1467b0","kind":"commit","published_at":"2021-09-23T17:46:20.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.11.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.11.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.2/manifests"},{"name":"v0.11.1","sha":"0e78da45711f6d30e924e95a38e456c5fd104eec","kind":"commit","published_at":"2021-09-22T16:45:44.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.11.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.11.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.1/manifests"},{"name":"v0.11.0","sha":"0eca3584eb9d0a96b7df2147d3f7243e3a0a3fc9","kind":"commit","published_at":"2021-07-12T15:40:43.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.11.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.11.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.11.0/manifests"},{"name":"v0.10.14","sha":"95057178a4dcd487df058fc569e363351fe11507","kind":"commit","published_at":"2021-05-21T11:34:24.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.14","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.14/manifests"},{"name":"v0.10.13","sha":"2e8e0c8ce162a8d07607752f86ab6e7f9c99d7e5","kind":"commit","published_at":"2021-05-20T18:29:02.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.13","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.13/manifests"},{"name":"v0.10.12","sha":"0308be3ef46d4e746e2a6b299a15d38bd202dda0","kind":"commit","published_at":"2021-05-19T16:23:19.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.12","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.12/manifests"},{"name":"v0.10.11","sha":"ffbf2c80fa6b7d187784120684358d403c2ec3ca","kind":"commit","published_at":"2021-05-07T15:51:03.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.11","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.11","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.11","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.11/manifests"},{"name":"v0.10.10","sha":"124c2756879502c6c353b1725df9b3ef785cf3b3","kind":"commit","published_at":"2021-04-29T15:24:59.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.10","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.10/manifests"},{"name":"v0.10.9","sha":"c1a88fef50dcf0b08deea733f247aa19befbaa02","kind":"commit","published_at":"2021-04-02T22:09:30.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.9","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.9/manifests"},{"name":"v0.10.8","sha":"e2fe2f002ac8520c0fcbb65df0869981bc02c50b","kind":"commit","published_at":"2021-02-08T15:37:19.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.8","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.8/manifests"},{"name":"v0.10.7","sha":"3c753222256284a75d48427665bacccb79bbb614","kind":"commit","published_at":"2021-02-01T18:36:35.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.7","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.7/manifests"},{"name":"v0.10.6","sha":"797bff67b29ddb7422e55c934b28095b6f5c15d1","kind":"commit","published_at":"2020-12-17T23:12:44.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.6","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.6/manifests"},{"name":"v0.10.5","sha":"b9343973307eaba1bbe28ebf9e1911520ffcbf0a","kind":"commit","published_at":"2020-07-26T18:37:54.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.5","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.5/manifests"},{"name":"v0.10.4","sha":"973c37d2624ef26cdecbff7a6cf8ba62285bdb1e","kind":"commit","published_at":"2020-06-16T15:46:42.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.4","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.4/manifests"},{"name":"v0.10.3","sha":"11080e01a10b22985d49d6d45cd0b7c54bee561b","kind":"commit","published_at":"2020-05-24T19:19:23.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.3","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.3/manifests"},{"name":"v0.10.2","sha":"f433a0ccbcd5ef73805abe34b5b6b182d93b39fe","kind":"commit","published_at":"2020-05-19T19:53:39.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.2/manifests"},{"name":"v0.10.1","sha":"b7ac9dcbee7fa5ed1e9db1e2ee8745fe55abb6bb","kind":"commit","published_at":"2020-04-07T20:57:10.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.1/manifests"},{"name":"v0.10.0","sha":"62ba8f03753de74b5d7a882de7d262cfc8497344","kind":"commit","published_at":"2020-02-27T05:01:58.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.10.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.10.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.10.0/manifests"},{"name":"v0.9.6","sha":"2c327764308b97023595afa94e1ae0fe19947456","kind":"commit","published_at":"2019-11-20T17:02:25.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.6","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.6/manifests"},{"name":"v0.9.5","sha":"43ce194603d7bff84d4f219b93210778800aac89","kind":"commit","published_at":"2019-07-19T13:52:27.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.5","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.5/manifests"},{"name":"v0.9.4","sha":"e96c0316f6970a19326bb6225128976f30d15e96","kind":"commit","published_at":"2019-07-18T15:36:19.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.4","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.4/manifests"},{"name":"v0.9.3","sha":"9809a0125251d137cd8903d6c500db14aae035e7","kind":"commit","published_at":"2019-07-08T04:29:06.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.3","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.3/manifests"},{"name":"v0.9.2","sha":"897a41af5db387c7df85c513f26cb206dd4b2cd6","kind":"commit","published_at":"2019-06-08T20:43:18.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.2/manifests"},{"name":"v0.9.1","sha":"2b78adca140ff8be3dbca3b8f423c55006871aa7","kind":"commit","published_at":"2019-05-25T21:25:59.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.1/manifests"},{"name":"v0.9.0","sha":"c36b235159fec005bff4ce243343bf1aa1a14b72","kind":"commit","published_at":"2019-05-23T16:18:05.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.9.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.9.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.9.0/manifests"},{"name":"v0.8.2","sha":"839a313562cd2566f513586a95ff9f213ef7cd0c","kind":"commit","published_at":"2019-04-04T18:54:38.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.8.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.8.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.2/manifests"},{"name":"v0.8.1","sha":"52f2476ad472f5853cc1471a1ab9756e151684be","kind":"commit","published_at":"2019-03-31T18:21:56.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.8.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.8.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.1/manifests"},{"name":"v0.8.0","sha":"6ab5a58baac8b07a9e190d3a5c617bcf5aaec7e0","kind":"commit","published_at":"2019-03-29T17:51:46.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.8.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.8.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.8.0/manifests"},{"name":"v0.7.2","sha":"b5538d9a2b694823991e2c6915b4e925224df520","kind":"commit","published_at":"2019-01-01T23:24:44.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.7.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.7.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.2/manifests"},{"name":"v0.7.1","sha":"fa574714fb03d3e788b759955a1b3ca838218b00","kind":"commit","published_at":"2018-12-25T19:25:53.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.7.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.7.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.1/manifests"},{"name":"v0.7.0","sha":"d7133ac8af76d0c5a9f9626af640af0e2be65e77","kind":"commit","published_at":"2018-11-01T14:12:03.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.7.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.7.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.7.0/manifests"},{"name":"v0.6.4","sha":"524b50c87c1a461ea1bb35f7d62650905ded43b6","kind":"commit","published_at":"2018-09-05T13:28:26.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.6.4","html_url":"https://github.com/hvac/hvac/releases/tag/v0.6.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.4/manifests"},{"name":"v0.6.3","sha":"06d5a27453c7c2d02cae8dc7c3dd6272f9ad96f3","kind":"commit","published_at":"2018-08-08T12:46:35.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.6.3","html_url":"https://github.com/hvac/hvac/releases/tag/v0.6.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.3/manifests"},{"name":"v0.6.2","sha":"ab18e9413aadd202a90892abf562180dfef5478a","kind":"commit","published_at":"2018-07-19T12:51:40.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.6.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.6.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.2/manifests"},{"name":"v0.6.1","sha":"e374b47c6fc193e978de79f3a6a9d493c2a5ee84","kind":"commit","published_at":"2018-07-05T12:11:44.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.6.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.6.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.1/manifests"},{"name":"v0.6.0","sha":"d610ba6c8b2aa9ad9589740e73ab6eeefd9278c6","kind":"commit","published_at":"2018-06-16T20:43:04.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.6.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.6.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.6.0/manifests"},{"name":"v0.5.0","sha":"de5212a3204431eb212366671baa0d150d24895e","kind":"commit","published_at":"2018-02-20T19:29:48.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.5.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.5.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.5.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.5.0/manifests"},{"name":"v0.4.0","sha":"fa44f25c7d64983f31f3b0bbff96602c76bb2b94","kind":"commit","published_at":"2018-02-02T21:55:27.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.4.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.4.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.4.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.4.0/manifests"},{"name":"v0.3.0","sha":"2cf78c78165942634e1a0a1a32b4ed1643047f47","kind":"commit","published_at":"2017-11-09T23:43:25.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.3.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.3.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.3.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.3.0/manifests"},{"name":"v0.2.17","sha":"e52ad1737b12a5d90c54035cbc53c03dd0e6090e","kind":"commit","published_at":"2016-12-15T19:27:40.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.17","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.17","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.17","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.17/manifests"},{"name":"v0.2.16","sha":"743cef214d6dca6f200a615745dc7f5ddc714dca","kind":"commit","published_at":"2016-09-12T16:44:56.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.16","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.16","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.16","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.16/manifests"},{"name":"v0.2.15","sha":"43ed24eb82b83322e5715e7d1ca5f189aee5611a","kind":"commit","published_at":"2016-06-22T19:58:35.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.15","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.15","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.15","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.15/manifests"},{"name":"v0.2.14","sha":"da330d43da4e420a7bbadc62e348051fc95e0529","kind":"commit","published_at":"2016-06-02T21:21:36.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.14","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.14","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.14","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.14/manifests"},{"name":"v0.2.13","sha":"490fa2e0f970038444c002efd8322b9d954b3c53","kind":"commit","published_at":"2016-05-31T20:34:28.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.13","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.13","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.13","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.13/manifests"},{"name":"v0.2.12","sha":"8f871ea35914b0340f640a3d4e5ae80095a90619","kind":"commit","published_at":"2016-05-12T21:15:18.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.12","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.12","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.12","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.12/manifests"},{"name":"v0.2.10","sha":"545dd0b044ea1271fd6f01204c460f2a410fab74","kind":"commit","published_at":"2016-04-08T21:06:48.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.10","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.10","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.10","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.10/manifests"},{"name":"v0.2.9","sha":"5c2530a89599b28d84420480f86121de8bcc2b84","kind":"commit","published_at":"2016-03-18T19:10:53.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.9","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.9","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.9","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.9/manifests"},{"name":"v0.2.8","sha":"aafb7a0f5ccc06ba5d0777a37c0d5e48c9505580","kind":"commit","published_at":"2016-02-03T02:02:44.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.8","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.8","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.8","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.8/manifests"},{"name":"v0.2.7","sha":"335ef1fec28412324b20a5f6f14fbc22189eabe2","kind":"commit","published_at":"2015-12-16T18:07:49.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.7","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.7","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.7","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.7/manifests"},{"name":"v0.2.6","sha":"f18a1076df65661a5c94cedf2367db55eef92296","kind":"commit","published_at":"2015-10-30T22:31:13.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.6","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.6","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.6","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.6/manifests"},{"name":"v0.2.5","sha":"77a0b4a422fec33082a9a95de37e0f8154917c66","kind":"commit","published_at":"2015-09-29T19:09:01.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.5","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.5","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.5","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.5/manifests"},{"name":"v0.2.4","sha":"ce149869fe35a75125413cf98cb1b0bc50592dea","kind":"commit","published_at":"2015-07-23T16:02:18.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.4","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.4","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.4","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.4/manifests"},{"name":"v0.2.3","sha":"947549933858e5d22e332c4c3734ea0db51c47ac","kind":"commit","published_at":"2015-07-19T01:57:21.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.3","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.3","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.3","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.3/manifests"},{"name":"v0.2.2","sha":"e3b4c1f7f203876ee77b84a2543038c8b30c7bc0","kind":"commit","published_at":"2015-06-12T21:37:56.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.2","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.2","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.2","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.2/manifests"},{"name":"v0.2.1","sha":"006ac997b62cca4270265436642519e7f9b14c20","kind":"commit","published_at":"2015-06-03T23:48:29.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.1/manifests"},{"name":"v0.2.0","sha":"782cef5e49bb1a1ca0239ac8997908f62ca5df1b","kind":"commit","published_at":"2015-05-25T23:07:37.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.2.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.2.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.2.0/manifests"},{"name":"v0.1.1","sha":"65bbcba086abed57d7905294fcf25d6cb5085caa","kind":"commit","published_at":"2015-05-21T02:51:05.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.1.1","html_url":"https://github.com/hvac/hvac/releases/tag/v0.1.1","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.1.1","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.1.1/manifests"},{"name":"v0.1.0","sha":"533d6b5525831f0462e549f4c4b844f2be8cd6e0","kind":"commit","published_at":"2015-05-17T10:13:22.000Z","download_url":"https://codeload.github.com/hvac/hvac/tar.gz/v0.1.0","html_url":"https://github.com/hvac/hvac/releases/tag/v0.1.0","dependencies_parsed_at":null,"dependency_job_id":null,"tag_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.1.0","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/hvac%2Fhvac/tags/v0.1.0/manifests"}]},"repo_metadata_updated_at":"2024-10-29T20:45:11.173Z","dependent_packages_count":132,"downloads":30623244,"downloads_period":"last-month","dependent_repos_count":1016,"rankings":{"downloads":0.06914804835594554,"dependent_repos_count":0.3521598218658234,"dependent_packages_count":0.16360758390849714,"stargazers_count":2.6076334309720894,"forks_count":3.6283466646613123,"docker_downloads_count":0.46844592971110055,"average":1.214890246579128},"purl":"pkg:pypi/hvac","advisories":[],"docker_usage_url":"https://docker.ecosyste.ms/usage/pypi/hvac","docker_dependents_count":271,"docker_downloads_count":25965543,"usage_url":"https://repos.ecosyste.ms/usage/pypi/hvac","dependent_repositories_url":"https://repos.ecosyste.ms/api/v1/usage/pypi/hvac/dependencies","status":null,"funding_links":[],"critical":true,"versions_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hvac/versions","version_numbers_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hvac/version_numbers","dependent_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hvac/dependent_packages","related_packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/packages/hvac/related_packages","maintainers":[{"uuid":"briantist","login":"briantist","name":null,"email":null,"url":null,"packages_count":3,"html_url":"https://pypi.org/user/briantist/","role":null,"created_at":"2022-12-31T09:27:18.681Z","updated_at":"2022-12-31T09:27:18.681Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/briantist/packages"},{"uuid":"adammike","login":"adammike","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/adammike/","role":null,"created_at":"2022-12-31T09:27:18.677Z","updated_at":"2022-12-31T09:27:18.677Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/adammike/packages"},{"uuid":"colinpm","login":"colinpm","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/colinpm/","role":null,"created_at":"2022-12-31T09:27:18.686Z","updated_at":"2022-12-31T09:27:18.686Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/colinpm/packages"},{"uuid":"hvac-bot","login":"hvac-bot","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/hvac-bot/","role":null,"created_at":"2022-12-31T09:27:18.690Z","updated_at":"2022-12-31T09:27:18.690Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/hvac-bot/packages"},{"uuid":"ianunruh","login":"ianunruh","name":null,"email":null,"url":null,"packages_count":1,"html_url":"https://pypi.org/user/ianunruh/","role":null,"created_at":"2022-12-31T09:27:18.693Z","updated_at":"2022-12-31T09:27:18.693Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/ianunruh/packages"},{"uuid":"jeffwecan","login":"jeffwecan","name":null,"email":null,"url":null,"packages_count":2,"html_url":"https://pypi.org/user/jeffwecan/","role":null,"created_at":"2022-12-31T09:27:18.697Z","updated_at":"2022-12-31T09:27:18.697Z","packages_url":"https://packages.ecosyste.ms/api/v1/registries/pypi.org/maintainers/jeffwecan/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":12,"unique_repositories_count_past_30_days":1,"recent_issues":[{"uuid":"4463136930","node_id":"PR_kwDOSd9eGM7cW6mc","number":4,"state":"closed","title":"deps(dev): update hvac requirement from \u003e=2.0.0 to \u003e=2.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-17T10:44:05.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-17T10:13:30.000Z","updated_at":"2026-05-17T10:44:07.000Z","time_to_close":1835,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(dev): update","packages":[{"name":"hvac","old_version":"\u003e=2.0.0","new_version":"\u003e=2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [hvac](https://github.com/hvac/hvac) 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/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.0.0...v2.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/Coding-Dev-Tools/envault/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Coding-Dev-Tools%2Fenvault/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"},{"uuid":"4250551236","node_id":"PR_kwDORnbkb87R1qZa","number":10,"state":"open","title":"chore(deps): Update hvac requirement from \u003e=2.1.0 to \u003e=2.4.0 in /lib/python","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-04-13T00:58:01.000Z","updated_at":"2026-04-13T00:58:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Update","packages":[{"name":"hvac","old_version":"\u003e=2.1.0","new_version":"\u003e=2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":"/lib/python","ecosystem":"pip"},"body":"Updates the requirements on [hvac](https://github.com/hvac/hvac) 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/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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/douglas-brush/dev-identity-secrets-reference/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/douglas-brush%2Fdev-identity-secrets-reference/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"},{"uuid":"4012883749","node_id":"PR_kwDOPrR8PM7HalTE","number":1521,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 150 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-02T19:22:44.000Z","updated_at":"2026-03-02T19:25:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":150,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.84.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.9","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.4","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.2","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.135.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.25.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.0","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.4","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.16","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-text-splitters","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.10","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.9","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.9","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nltk","old_version":"3.9.2","new_version":"3.9.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.14.0","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.1","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.42.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.2","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.4","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.54.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.48","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"stevedore","old_version":"5.6.0","new_version":"5.7.0"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.24.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.1","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"uvicorn","old_version":"0.40.0","new_version":"0.41.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.23.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-material","old_version":"9.7.1","new_version":"9.7.3","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"backrefs","old_version":"6.1","new_version":"6.2","repository_url":"https://github.com/facelessuser/backrefs"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 150 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.84.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.9` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.4` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.2` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.135.1` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.25.0` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.2` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.4` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.16` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.10` |\n| [langchain-text-splitters](https://github.com/langchain-ai/langchain) | `1.1.0` | `1.1.1` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.10` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.9` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.9` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.2` | `3.9.3` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.14.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.1` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.42.0` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.2` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.4` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.54.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.48` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [stevedore](https://docs.openstack.org/stevedore) | `5.6.0` | `5.7.0` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.24.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.40.0` | `0.41.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.6` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.23.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.1` | `9.7.3` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [backrefs](https://github.com/facelessuser/backrefs) | `6.1` | `6.2` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.84.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.84.0\u003c/h2\u003e\n\u003ch2\u003e0.84.0 (2026-02-25)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.83.0...v0.84.0\"\u003ev0.83.0...v0.84.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e change array_format to brackets (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/925d2ad6b76ad7c15de07b9b2768738775f71631\"\u003e925d2ad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e remove publishing section from cli target (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7bc7cebc68db70f08fce23e7e0b24acbc9ff37a7\"\u003e7bc7ceb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehelpers:\u003c/strong\u003e add conversion helpers for MCP tools, prompts, and resources (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1383\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9489751386d1540bf80eff63ab47ca2b3cc18fa1\"\u003e9489751\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing raw jsonl results method (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1009d4aca8be42973ca39104bc9bd8087f51ff9c\"\u003e1009d4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e add request options to SSE classes (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4f4bc8e6241c2ccee8dfe4cdbc522081e3e30f08\"\u003e4f4bc8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f7056e09411a45798a678be5766a7b7d6dcbc7a9\"\u003ef7056e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/143efccfcc20c12f920b6ba242eff7c0feeea7c4\"\u003e143efcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4a4dc9f6b36ab0224095790f4311c7f60c9845f7\"\u003e4a4dc9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e update jsonl tests (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a8e6a6e5544b9f1626e3fb5faa31a1accfc81441\"\u003ea8e6a6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erebrand to Claude SDK and streamline README (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/6b544058ab19e55e1c76a4ba9816205d1eedc630\"\u003e6b54405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.83.0\u003c/h2\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.82.0\u003c/h2\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.84.0 (2026-02-25)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.83.0...v0.84.0\"\u003ev0.83.0...v0.84.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e change array_format to brackets (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/925d2ad6b76ad7c15de07b9b2768738775f71631\"\u003e925d2ad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e remove publishing section from cli target (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7bc7cebc68db70f08fce23e7e0b24acbc9ff37a7\"\u003e7bc7ceb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehelpers:\u003c/strong\u003e add conversion helpers for MCP tools, prompts, and resources (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1383\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9489751386d1540bf80eff63ab47ca2b3cc18fa1\"\u003e9489751\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing raw jsonl results method (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1009d4aca8be42973ca39104bc9bd8087f51ff9c\"\u003e1009d4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e add request options to SSE classes (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4f4bc8e6241c2ccee8dfe4cdbc522081e3e30f08\"\u003e4f4bc8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f7056e09411a45798a678be5766a7b7d6dcbc7a9\"\u003ef7056e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/143efccfcc20c12f920b6ba242eff7c0feeea7c4\"\u003e143efcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4a4dc9f6b36ab0224095790f4311c7f60c9845f7\"\u003e4a4dc9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e update jsonl tests (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a8e6a6e5544b9f1626e3fb5faa31a1accfc81441\"\u003ea8e6a6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erebrand to Claude SDK and streamline README (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/6b544058ab19e55e1c76a4ba9816205d1eedc630\"\u003e6b54405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\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/anthropics/anthropic-sdk-python/commit/49d639a671cb0ac30c767e8e1e68fdd5925205d5\"\u003e\u003ccode\u003e49d639a\u003c/code\u003e\u003c/a\u003e release: 0.84.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4d73b2159f7f3e88113a904f785de58ec4157045\"\u003e\u003ccode\u003e4d73b21\u003c/code\u003e\u003c/a\u003e feat(helpers): add conversion helpers for MCP tools, prompts, and resources (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0e4092173fc52d773675f8e3a4ced6a5e2f67c9f\"\u003e\u003ccode\u003e0e40921\u003c/code\u003e\u003c/a\u003e docs: rebrand to Claude SDK and streamline README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c3017a227c67377b862644feb463c0d8a1e9ddc9\"\u003e\u003ccode\u003ec3017a2\u003c/code\u003e\u003c/a\u003e chore(internal): simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/470fda9c14714117342c0491d6e436d158bbb4ab\"\u003e\u003ccode\u003e470fda9\u003c/code\u003e\u003c/a\u003e chore(internal): make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c30c72d710dea90437a73713296e76c12518c359\"\u003e\u003ccode\u003ec30c72d\u003c/code\u003e\u003c/a\u003e chore: add missing raw jsonl results method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9d9a5a1aab3aa67c665c39bbeed3fec298fc2e6a\"\u003e\u003ccode\u003e9d9a5a1\u003c/code\u003e\u003c/a\u003e chore(internal):  make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c28d2d50a5f5197839c36fb4741bee8cd1e976c1\"\u003e\u003ccode\u003ec28d2d5\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/bb13f1ea6be3941342115fdb125e3fe225252071\"\u003e\u003ccode\u003ebb13f1e\u003c/code\u003e\u003c/a\u003e chore(internal): add request options to SSE classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ab0ccb990d098ef56c0367abcb0c745d7a58a99e\"\u003e\u003ccode\u003eab0ccb9\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.84.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.9\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.8...v1.6.9\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.8...v1.6.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eChanges in \u003ccode\u003ejose\u003c/code\u003e module\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNot using header's \u003ccode\u003ejwk\u003c/code\u003e automatically\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eES256K\u003c/code\u003e into default jwt algorithms\u003c/li\u003e\n\u003cli\u003eRemove deprecated algorithm from default registry\u003c/li\u003e\n\u003cli\u003eGenerate random \u003ccode\u003ecek\u003c/code\u003e when \u003ccode\u003ecek\u003c/code\u003e length doesn't match\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.8\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eEdDSA\u003c/code\u003e to default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eImplement RFC9700 PKCE downgrade countermeasure.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/9266eaa2227ad7e21dc731b2a4a01909aabd934b\"\u003e\u003ccode\u003e9266eaa\u003c/code\u003e\u003c/a\u003e chore: release 1.6.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b9bb2b25bf8b7e01512d847a95c1749646eaa72b\"\u003e\u003ccode\u003eb9bb2b2\u003c/code\u003e\u003c/a\u003e fix(oidc): fail close at validating c_hash and at_hash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/1b0a1d988842bff7347c4ec0a70e45c3ba55504e\"\u003e\u003ccode\u003e1b0a1d9\u003c/code\u003e\u003c/a\u003e fix(jose): generate random cek when cek length doesn't match\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/5be3c518794b7322375bae2bf1871713d9b5c2fb\"\u003e\u003ccode\u003e5be3c51\u003c/code\u003e\u003c/a\u003e fix(jose): add ES256K into default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/48b345f29f6c459f11c6a40162b6c0b742ef2e22\"\u003e\u003ccode\u003e48b345f\u003c/code\u003e\u003c/a\u003e fix(jose): remove deprecated algorithm from default registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/a5d4b2d4c9e46bfa11c82f85fdc2bcc0b50ae681\"\u003e\u003ccode\u003ea5d4b2d\u003c/code\u003e\u003c/a\u003e fix(jose): do not use header's jwk automatically\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.4\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.9.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: fixed some typos in comments by \u003ca href=\"https://github.com/jakob1379\"\u003e\u003ccode\u003e@​jakob1379\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1351\"\u003ePyCQA/bandit#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.6.0 to 3.7.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1353\"\u003ePyCQA/bandit#1353\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.18.0 to 6.19.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1357\"\u003ePyCQA/bandit#1357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B613 crash when reading from stdin by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1361\"\u003ePyCQA/bandit#1361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude filename in nosec 'no failed test' warning by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1363\"\u003ePyCQA/bandit#1363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B615 false positive when revision is set via variable by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1358\"\u003ePyCQA/bandit#1358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower version guard in check_ast_node to Python 3.12 by \u003ca href=\"https://github.com/rcgray\"\u003e\u003ccode\u003e@​rcgray\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1355\"\u003ePyCQA/bandit#1355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B106 reporting wrong line number on multiline function calls by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1360\"\u003ePyCQA/bandit#1360\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/jakob1379\"\u003e\u003ccode\u003e@​jakob1379\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1351\"\u003ePyCQA/bandit#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1361\"\u003ePyCQA/bandit#1361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rcgray\"\u003e\u003ccode\u003e@​rcgray\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1355\"\u003ePyCQA/bandit#1355\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.9.3...1.9.4\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.3...1.9.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/92ae8b82fb422a639f0ed8d99e96cea769594e08\"\u003e\u003ccode\u003e92ae8b8\u003c/code\u003e\u003c/a\u003e Fix B106 reporting wrong line number on multiline function calls (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1360\"\u003e#1360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/c8c8a55c3307333b8eb46cb2ef46d49b1fad6546\"\u003e\u003ccode\u003ec8c8a55\u003c/code\u003e\u003c/a\u003e Lower version guard in check_ast_node to Python 3.12 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1355\"\u003e#1355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/8f2f9284fca830ca017b2e2cc3ddc2a7b74b7040\"\u003e\u003ccode\u003e8f2f928\u003c/code\u003e\u003c/a\u003e Fix B615 false positive when revision is set via variable (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1358\"\u003e#1358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e27493f71c114e0e5dfc0a475d225d7f9f4a7e2b\"\u003e\u003ccode\u003ee27493f\u003c/code\u003e\u003c/a\u003e Include filename in nosec 'no failed test' warning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1363\"\u003e#1363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b69b336450301d424e5ba04c9a58e8d41b7169b6\"\u003e\u003ccode\u003eb69b336\u003c/code\u003e\u003c/a\u003e Fix B613 crash when reading from stdin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1361\"\u003e#1361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e418b798abcc3f2b00c07fd6315da8fe9aeead00\"\u003e\u003ccode\u003ee418b79\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.18.0 to 6.19.2 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1357\"\u003e#1357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ff646fd7e0e34fb350196fc58448fad17178c27a\"\u003e\u003ccode\u003eff646fd\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.6.0 to 3.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1353\"\u003e#1353\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/c0def6c7ebab60f98c28ba759d488f4fbe6dae89\"\u003e\u003ccode\u003ec0def6c\u003c/code\u003e\u003c/a\u003e chore: fixed some typos in comments (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1351\"\u003e#1351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/264b2472bf3c09522851bf7c7fa7d1c88bea044f\"\u003e\u003ccode\u003e264b247\u003c/code\u003e\u003c/a\u003e 1.38.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/e57065d9ef83e65f5f0f63f097ee2798d370b021\"\u003e\u003ccode\u003ee57065d\u003c/code\u003e\u003c/a\u003e Extract some duplicated test helpers and improve the \u003cstrong\u003ecall\u003c/strong\u003e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1521","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1521","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1521/packages"},{"uuid":"3979774980","node_id":"PR_kwDOPrR8PM7FuvAs","number":1518,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 149 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-23T19:23:27.000Z","updated_at":"2026-03-02T20:07:47.730Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":149,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.83.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.8","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.1","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.132.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.24.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.1","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.3","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.15","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-text-splitters","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.9","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.6","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.13.1","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.1","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.42.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.53.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"stevedore","old_version":"5.6.0","new_version":"5.7.0"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.24.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.1","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"uvicorn","old_version":"0.40.0","new_version":"0.41.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.22.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-material","old_version":"9.7.1","new_version":"9.7.2","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"backrefs","old_version":"6.1","new_version":"6.2","repository_url":"https://github.com/facelessuser/backrefs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 149 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.83.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.8` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.3` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.132.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.24.3` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.2` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.1` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.3` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.15` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.10` |\n| [langchain-text-splitters](https://github.com/langchain-ai/langchain) | `1.1.0` | `1.1.1` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.9` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.8` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.6` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.13.1` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.1` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.42.0` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.2` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.53.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.46` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [stevedore](https://docs.openstack.org/stevedore) | `5.6.0` | `5.7.0` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.24.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.40.0` | `0.41.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.6` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.22.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.1` | `9.7.2` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [backrefs](https://github.com/facelessuser/backrefs) | `6.1` | `6.2` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.83.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.83.0\u003c/h2\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.82.0\u003c/h2\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.81.0\u003c/h2\u003e\n\u003ch2\u003e0.81.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.80.0...v0.81.0\"\u003ev0.80.0...v0.81.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Make new tool versions available as top level tool types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0a385c29d26981f846b7394aefc89eebb43a4b60\"\u003e0a385c2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.80.0\u003c/h2\u003e\n\u003ch2\u003e0.80.0 (2026-02-17)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.79.0...v0.80.0\"\u003ev0.79.0...v0.80.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Releasing claude-sonnet-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/d518d6ecede3d0638f0b14950dc2be8efa0b4ff4\"\u003ed518d6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix spec errors (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1413a76f905e590fab583417f5cb1eef9f537c2c\"\u003e1413a76\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.81.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.80.0...v0.81.0\"\u003ev0.80.0...v0.81.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0a385c29d26981f846b7394aefc89eebb43a4b60\"\u003e0a385c2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.80.0 (2026-02-17)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.79.0...v0.80.0\"\u003ev0.79.0...v0.80.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Releasing claude-sonnet-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/d518d6ecede3d0638f0b14950dc2be8efa0b4ff4\"\u003ed518d6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix spec errors (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1413a76f905e590fab583417f5cb1eef9f537c2c\"\u003e1413a76\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove speed from ga messages (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1402\"\u003e#1402\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f6ce67c3ed5f2fc4a2fc48fb9d7bc6f1bbb5bd4a\"\u003ef6ce67c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\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/anthropics/anthropic-sdk-python/commit/7a6c642f51b603f9ef46c5603f48ccd55371e4cb\"\u003e\u003ccode\u003e7a6c642\u003c/code\u003e\u003c/a\u003e release: 0.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7ecac54c1ae91eb205fff16acbf65b36e444ed19\"\u003e\u003ccode\u003e7ecac54\u003c/code\u003e\u003c/a\u003e feat(api): Add top-level cache control (automatic caching)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/74793c8f43608aa19e1a05eea7b715509bfc1aa5\"\u003e\u003ccode\u003e74793c8\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f1181087ae843cad9ebd2cdab0e5bc052eec6de6\"\u003e\u003ccode\u003ef118108\u003c/code\u003e\u003c/a\u003e chore: update mock server docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c6499b9515a81eca05b6008920255f5f0f2ca17e\"\u003e\u003ccode\u003ec6499b9\u003c/code\u003e\u003c/a\u003e release: 0.82.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1186\"\u003e#1186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/acc4720fca9aa1c3690dc52d124ac79787b71b3a\"\u003e\u003ccode\u003eacc4720\u003c/code\u003e\u003c/a\u003e release: 0.81.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4de03c2ddc247084770a04a203d2e71666a6ad37\"\u003e\u003ccode\u003e4de03c2\u003c/code\u003e\u003c/a\u003e release: 0.80.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/cd1b39bf073c5482ed1c717f11147365eb68bbe9\"\u003e\u003ccode\u003ecd1b39b\u003c/code\u003e\u003c/a\u003e release: 0.79.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/fb52a6a09d09cde88913e36dadb03c335815d79a\"\u003e\u003ccode\u003efb52a6a\u003c/code\u003e\u003c/a\u003e fix: pass speed parameter through in sync beta count_tokens\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/b7c2df239d1256ee358501a2cd89bfe9ea129abe\"\u003e\u003ccode\u003eb7c2df2\u003c/code\u003e\u003c/a\u003e feat(api): enabling fast-mode in claude-opus-4-6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.83.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.8\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eEdDSA\u003c/code\u003e to default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/bb7a315befbad333faf9a23ef574d6e3134a6774\"\u003e\u003ccode\u003ebb7a315\u003c/code\u003e\u003c/a\u003e chore: release 1.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/0a423d4638bed1c0fe4597b2296a85c5bb59fba2\"\u003e\u003ccode\u003e0a423d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/844\"\u003e#844\u003c/a\u003e from azmeuk/806-get-jwt-config-client\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489\"\u003e\u003ccode\u003e2808378\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/714502a4738bc29f26eb245b0c66718d8536cdda\"\u003e\u003ccode\u003e714502a\u003c/code\u003e\u003c/a\u003e feat: get_jwt_config takes a client parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/260d04edee23d8470057ea659c16fb8a2c7b0dc2\"\u003e\u003ccode\u003e260d04e\u003c/code\u003e\u003c/a\u003e Fix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/eb37124bbbec6ccbfba3699d8960f9710d330ad8\"\u003e\u003ccode\u003eeb37124\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/778\"\u003e#778\u003c/a\u003e from shc261392/fix-httpx-oauth1-form-data-incorrect-s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.3\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.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/36d6f3c091d84dc547019d773ab6e63a1cbc23af\"\u003e\u003ccode\u003e36d6f3c\u003c/code\u003e\u003c/a\u003e Update tox tests for Python 3.10 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1346\"\u003e#1346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/da0d33816ba5c5f8f72a380720ad054596867807\"\u003e\u003ccode\u003eda0d338\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1341\"\u003e#1341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/649b9bdf87f4f9d850b29819b14b847bd3b8f970\"\u003e\u003ccode\u003e649b9bd\u003c/code\u003e\u003c/a\u003e Add check for hardcoded passwords in dicts. (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/3c56109061524f5907cc4d475b7370bac47a451b\"\u003e\u003ccode\u003e3c56109\u003c/code\u003e\u003c/a\u003e Fix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1337\"\u003e#1337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b790ce22f0a69f53468c1755e9d37e6349a2c8c2\"\u003e\u003ccode\u003eb790ce2\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/0b73bbe59642097050d5c698e55d13bae2c6b78c\"\u003e\u003ccode\u003e0b73bbe\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1334\"\u003e#1334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ce372dde9b384dfa25c0294dc637ce0ec4638a05\"\u003e\u003ccode\u003ece372dd\u003c/code\u003e\u003c/a\u003e 1.38.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/83c1dc799597a1d342caa9dc6476711c1086dde9\"\u003e\u003ccode\u003e83c1dc7\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003eTYPE_CHECKING\u003c/code\u003e guards in match statements (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1726\"\u003e#1726\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/41f6c01f71734513e6ac518d52e09fd905abae3d\"\u003e\u003ccode\u003e41f6c01\u003c/code\u003e\u003c/a\u003e fix docstubs not being generated for older python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/b00fdc450d57f58202bf37d641be0014a86c4952\"\u003e\u003ccode\u003eb00fdc4\u003c/code\u003e\u003c/a\u003e add tests to ensure that docstubs for multiple python versions are correctly ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/c34d0449c5a53aedabd07707813a3b7b84556cb5\"\u003e\u003ccode\u003ec34d044\u003c/code\u003e\u003c/a\u003e fix language server crash on abstract setter with no parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/55769d6a28b348ff0aaa3cc5e0917f0823f70b3c\"\u003e\u003ccode\u003e55769d6\u003c/code\u003e\u003c/a\u003e fix crash generating docstubs for older python versions caused by breaking ch...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/c3d29bf0deef8d16c4df8aa004651d1230c3e743\"\u003e\u003ccode\u003ec3d29bf\u003c/code\u003e\u003c/a\u003e fuck bash worst language ever\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/4bf506e4d15144c33f6ee03deeb72af9e830e17c\"\u003e\u003ccode\u003e4bf506e\u003c/code\u003e\u003c/a\u003e update links to docify repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/bc0955b639d6842812a83b6094538c1c84b5a6c4\"\u003e\u003ccode\u003ebc0955b\u003c/code\u003e\u003c/a\u003e update \u003ccode\u003egenerate_docstubs.py\u003c/code\u003e script to use the new docify multithreaded mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/a66be176971051dad271284e3e72d30fce0e8430\"\u003e\u003ccode\u003ea66be17\u003c/code\u003e\u003c/a\u003e bump python dependencies\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/detachhead/basedpyright/compare/v1.36.2...v1.38.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beautifulsoup4` from 4.13.4 to 4.14.3\n\nUpdates `billiard` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/billiard/releases\"\u003ebilliard's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/439\"\u003ecelery/billiard#439\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/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.3...v4.2.4\"\u003ehttps://github.com/celery/billiard/compare/v4.2.3...v4.2.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/436\"\u003ecelery/billiard#436\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/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.2...v4.2.3\"\u003ehttps://github.com/celery/billiard/compare/v4.2.2...v4.2.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/celery/billiard/blob/main/CHANGES.txt\"\u003ebilliard's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.4 - 2025-11-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.2.3 - 2025-11-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\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/celery/billiard/commit/69c2f296c2b36622a90c548f26c940712cb9a1df\"\u003e\u003ccode\u003e69c2f29\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/973c773fee4ccd1ab1151d0801905176b284075d\"\u003e\u003ccode\u003e973c773\u003c/code\u003e\u003c/a\u003e Eliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/51153949934c247ac23de990eee4073adcf08083\"\u003e\u003ccode\u003e5115394\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/e8f51d1995cf251787001683dbf443098d8b0ed7\"\u003e\u003ccode\u003ee8f51d1\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/8603172ab818f5069dd191dfaa3eb0a7653c6dda\"\u003e\u003ccode\u003e8603172\u003c/code\u003e\u003c/a\u003e Ensure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/849a3e8414cae0ba953d7c164129c1320e2a241d\"\u003e\u003ccode\u003e849a3e8\u003c/code\u003e\u003c/a\u003e Bump github...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1518","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1518","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1518/packages"},{"uuid":"3949032493","node_id":"PR_kwDOPrR8PM7EKmEP","number":1511,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 142 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":10,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-16T18:24:21.000Z","updated_at":"2026-02-16T18:25:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":142,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.79.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.8","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.0","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.129.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.24.2","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.0","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.3","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.13","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.9","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.7","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.6","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.3","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.13.1","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.41.5","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.53.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.23.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.22.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 142 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.79.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.8` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.3` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.129.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.24.2` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.1` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.3` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.13` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.9` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.7` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.6` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.3` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.13.1` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.41.5` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.1` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.53.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.46` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.23.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.5` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.22.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.79.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.79.0\u003c/h2\u003e\n\u003ch2\u003e0.79.0 (2026-02-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.78.0...v0.79.0\"\u003ev0.78.0...v0.79.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e enabling fast-mode in claude-opus-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/5953ba7b425ba113595de570bc8c639ff4dc4047\"\u003e5953ba7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epass speed parameter through in sync beta count_tokens (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1dd6119daca6de7a6eb730eb2494f368889ea050\"\u003e1dd6119\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.78.0\u003c/h2\u003e\n\u003ch2\u003e0.78.0 (2026-02-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.1...v0.78.0\"\u003ev0.77.1...v0.78.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Release Claude Opus 4.6, adaptive thinking, and other features (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3ef1529b45c55645646cc6043784f999fda088de\"\u003e3ef1529\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.77.1\u003c/h2\u003e\n\u003ch2\u003e0.77.1 (2026-02-03)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.0...v0.77.1\"\u003ev0.77.0...v0.77.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003estructured outputs:\u003c/strong\u003e send structured output beta header when format is omitted (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1158\"\u003e#1158\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/258494e2b814a6a096b01e50f83560b4cf4a98ad\"\u003e258494e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/aec4512305e8dce41df8ef0ab225f4939e099bcf\"\u003eaec4512\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.77.0\u003c/h2\u003e\n\u003ch2\u003e0.77.0 (2026-01-29)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.76.0...v0.77.0\"\u003ev0.76.0...v0.77.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Structured Outputs in the Messages API (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ad5667774ad2e7efd181bcfda03fab3ea50630b9\"\u003ead56677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e migrate sending message format in output_config rather than output_format (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/af405e473f7cf6091cb8e711264227b9b0508528\"\u003eaf405e4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add custom JSON encoder for extended type support (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7780e90bd2fe4c1116d59bc0ad543aa609fc643d\"\u003e7780e90\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse output_config for structured outputs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/82d669db652ed3d9aede61fd500fabb291b8f035\"\u003e82d669d\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.79.0 (2026-02-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.78.0...v0.79.0\"\u003ev0.78.0...v0.79.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e enabling fast-mode in claude-opus-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/5953ba7b425ba113595de570bc8c639ff4dc4047\"\u003e5953ba7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epass speed parameter through in sync beta count_tokens (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1dd6119daca6de7a6eb730eb2494f368889ea050\"\u003e1dd6119\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.78.0 (2026-02-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.1...v0.78.0\"\u003ev0.77.1...v0.78.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Release Claude Opus 4.6, adaptive thinking, and other features (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3ef1529b45c55645646cc6043784f999fda088de\"\u003e3ef1529\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.77.1 (2026-02-03)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.0...v0.77.1\"\u003ev0.77.0...v0.77.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003estructured outputs:\u003c/strong\u003e send structured output beta header when format is omitted (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1158\"\u003e#1158\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/258494e2b814a6a096b01e50f83560b4cf4a98ad\"\u003e258494e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/aec4512305e8dce41df8ef0ab225f4939e099bcf\"\u003eaec4512\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.77.0 (2026-01-29)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.76.0...v0.77.0\"\u003ev0.76.0...v0.77.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Structured Outputs in the Messages API (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ad5667774ad2e7efd181bcfda03fab3ea50630b9\"\u003ead56677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e migrate sending message format in output_config rather than output_format (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/af405e473f7cf6091cb8e711264227b9b0508528\"\u003eaf405e4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add custom JSON encoder for extended type support (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7780e90bd2fe4c1116d59bc0ad543aa609fc643d\"\u003e7780e90\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse output_config for structured outputs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/82d669db652ed3d9aede61fd500fabb291b8f035\"\u003e82d669d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e run formatter (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/2e4ff86d7b8bef8fe5c4b7e62bf47dfff79f0577\"\u003e2e4ff86\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove class causing breaking change (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1333\"\u003e#1333\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/81ee9533d14f9dc3753a4a1320ea744825b17e92\"\u003e81ee953\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/anthropics/anthropic-sdk-python/commit/cd1b39bf073c5482ed1c717f11147365eb68bbe9\"\u003e\u003ccode\u003ecd1b39b\u003c/code\u003e\u003c/a\u003e release: 0.79.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/fb52a6a09d09cde88913e36dadb03c335815d79a\"\u003e\u003ccode\u003efb52a6a\u003c/code\u003e\u003c/a\u003e fix: pass speed parameter through in sync beta count_tokens\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/b7c2df239d1256ee358501a2cd89bfe9ea129abe\"\u003e\u003ccode\u003eb7c2df2\u003c/code\u003e\u003c/a\u003e feat(api): enabling fast-mode in claude-opus-4-6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7c42e4b04b170d88f39805b2b5956fa04a6e26d5\"\u003e\u003ccode\u003e7c42e4b\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f2b61ed11c36de713bdf6ec27cd502826965c882\"\u003e\u003ccode\u003ef2b61ed\u003c/code\u003e\u003c/a\u003e release: 0.78.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a4a29cab92c50bebc636bf97cd3177719a1cd8df\"\u003e\u003ccode\u003ea4a29ca\u003c/code\u003e\u003c/a\u003e feat(api): manual updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3955600d74eafef1eef5a66f460b54ed5deaf130\"\u003e\u003ccode\u003e3955600\u003c/code\u003e\u003c/a\u003e release: 0.77.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/eca8ddfb199a012ac8d5fd362757c4155afcb419\"\u003e\u003ccode\u003eeca8ddf\u003c/code\u003e\u003c/a\u003e fix(structured outputs): send structured output beta header when format is om...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ee44c52131650fb17ee618d20d17f792d5071230\"\u003e\u003ccode\u003eee44c52\u003c/code\u003e\u003c/a\u003e chore: remove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9c485f6966e10ae0ea9eabb3a921d2ea8145a25b\"\u003e\u003ccode\u003e9c485f6\u003c/code\u003e\u003c/a\u003e release: 0.77.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1117\"\u003e#1117\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.79.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/bb7a315befbad333faf9a23ef574d6e3134a6774\"\u003e\u003ccode\u003ebb7a315\u003c/code\u003e\u003c/a\u003e chore: release 1.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/0a423d4638bed1c0fe4597b2296a85c5bb59fba2\"\u003e\u003ccode\u003e0a423d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/844\"\u003e#844\u003c/a\u003e from azmeuk/806-get-jwt-config-client\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489\"\u003e\u003ccode\u003e2808378\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/714502a4738bc29f26eb245b0c66718d8536cdda\"\u003e\u003ccode\u003e714502a\u003c/code\u003e\u003c/a\u003e feat: get_jwt_config takes a client parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/260d04edee23d8470057ea659c16fb8a2c7b0dc2\"\u003e\u003ccode\u003e260d04e\u003c/code\u003e\u003c/a\u003e Fix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/eb37124bbbec6ccbfba3699d8960f9710d330ad8\"\u003e\u003ccode\u003eeb37124\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/778\"\u003e#778\u003c/a\u003e from shc261392/fix-httpx-oauth1-form-data-incorrect-s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.3\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.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/36d6f3c091d84dc547019d773ab6e63a1cbc23af\"\u003e\u003ccode\u003e36d6f3c\u003c/code\u003e\u003c/a\u003e Update tox tests for Python 3.10 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1346\"\u003e#1346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/da0d33816ba5c5f8f72a380720ad054596867807\"\u003e\u003ccode\u003eda0d338\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1341\"\u003e#1341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/649b9bdf87f4f9d850b29819b14b847bd3b8f970\"\u003e\u003ccode\u003e649b9bd\u003c/code\u003e\u003c/a\u003e Add check for hardcoded passwords in dicts. (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/3c56109061524f5907cc4d475b7370bac47a451b\"\u003e\u003ccode\u003e3c56109\u003c/code\u003e\u003c/a\u003e Fix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1337\"\u003e#1337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b790ce22f0a69f53468c1755e9d37e6349a2c8c2\"\u003e\u003ccode\u003eb790ce2\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/0b73bbe59642097050d5c698e55d13bae2c6b78c\"\u003e\u003ccode\u003e0b73bbe\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1334\"\u003e#1334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/db81e4db6cf73690fde8fa22d0847ff17b06b23c\"\u003e\u003ccode\u003edb81e4d\u003c/code\u003e\u003c/a\u003e 1.38.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/6b1d48e6ac6a9fb9361371b933a4eeca10aa3bc0\"\u003e\u003ccode\u003e6b1d48e\u003c/code\u003e\u003c/a\u003e fix: error message for pyright executable fallback (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1723\"\u003e#1723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/49a0041a6c5bf2c5f2bc759fbefa54a8f5d4da8f\"\u003e\u003ccode\u003e49a0041\u003c/code\u003e\u003c/a\u003e add more quick fixes for specific error types (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1721\"\u003e#1721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/eeca15f7aa21fbfa031370e0fd5c9d6934ba7df2\"\u003e\u003ccode\u003eeeca15f\u003c/code\u003e\u003c/a\u003e fix: don't comment out return types in stub generation (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1724\"\u003e#1724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ba43b2d33259b4b576e2929a700b052f31d55334\"\u003e\u003ccode\u003eba43b2d\u003c/code\u003e\u003c/a\u003e show the default value from the implementation signature when displaying an o...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ecea0a681818fc8b90a1314b7d2f844fef8f53c0\"\u003e\u003ccode\u003eecea0a6\u003c/code\u003e\u003c/a\u003e 1.37.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/df279750472a016fae05feaaa9d0824724ad00e4\"\u003e\u003ccode\u003edf27975\u003c/code\u003e\u003c/a\u003e update badge\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/176bfb108a17b6c5a61119c3ee3e2e5d6470c8ed\"\u003e\u003ccode\u003e176bfb1\u003c/code\u003e\u003c/a\u003e fix $schema being reported as unrecognized setting in config files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/206627d635c13cda872dd665cc9dd67452707749\"\u003e\u003ccode\u003e206627d\u003c/code\u003e\u003c/a\u003e 1.37.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/039f3be9c6d959ccfd54133b5ab3b1159d6763f6\"\u003e\u003ccode\u003e039f3be\u003c/code\u003e\u003c/a\u003e extract the infinite recursion prevention logic into a separate class since t...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/detachhead/basedpyright/compare/v1.36.2...v1.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beautifulsoup4` from 4.13.4 to 4.14.3\n\nUpdates `billiard` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/billiard/releases\"\u003ebilliard's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/439\"\u003ecelery/billiard#439\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/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.3...v4.2.4\"\u003ehttps://github.com/celery/billiard/compare/v4.2.3...v4.2.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/436\"\u003ecelery/billiard#436\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/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.2...v4.2.3\"\u003ehttps://github.com/celery/billiard/compare/v4.2.2...v4.2.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/celery/billiard/blob/main/CHANGES.txt\"\u003ebilliard's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.4 - 2025-11-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.2.3 - 2025-11-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\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/celery/billiard/commit/69c2f296c2b36622a90c548f26c940712cb9a1df\"\u003e\u003ccode\u003e69c2f29\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/973c773fee4ccd1ab1151d0801905176b284075d\"\u003e\u003ccode\u003e973c773\u003c/code\u003e\u003c/a\u003e Eliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/51153949934c247ac23de990eee4073adcf08083\"\u003e\u003ccode\u003e5115394\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/437\"\u003e#437\u003c/a\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1511","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1511","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1511/packages"},{"uuid":"3934239497","node_id":"PR_kwDOBwbUJs7DZ_Dm","number":149,"state":"closed","title":"Bump the all-dependencies group in /requirements with 38 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-02-12T22:53:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-12T22:00:31.000Z","updated_at":"2026-02-12T22:54:00.000Z","time_to_close":3208,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all-dependencies","update_count":38,"packages":[{"name":"bleach","old_version":"6.0.0","new_version":"6.3.0","repository_url":"https://github.com/mozilla/bleach"},{"name":"celery","old_version":"5.4.0","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"celery-redbeat","old_version":"2.2.0","new_version":"2.3.3","repository_url":"https://github.com/sibson/redbeat"},{"name":"cryptography","old_version":"42.0.4","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"dockerfile-parse","old_version":"2.0.0","new_version":"2.0.1","repository_url":"https://github.com/containerbuildsystem/dockerfile-parse"},{"name":"flask","old_version":"2.3.2","new_version":"2.3.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-admin","old_version":"1.6.1","new_version":"2.0.2","repository_url":"https://github.com/pallets-eco/flask-admin"},{"name":"flask-babel","old_version":"3.1.0","new_version":"4.0.0","repository_url":"https://github.com/python-babel/flask-babel"},{"name":"flask-debugtoolbar","old_version":"0.14.1","new_version":"0.16.0","repository_url":"https://github.com/pallets-eco/flask-debugtoolbar"},{"name":"flask-mail","old_version":"0.9.1","new_version":"0.10.0","repository_url":"https://github.com/pallets-eco/flask-mail"},{"name":"flask-migrate","old_version":"3.0.1","new_version":"4.1.0","repository_url":"https://github.com/miguelgrinberg/flask-migrate"},{"name":"flask-nav3","old_version":"0.7.0","new_version":"0.7.2","repository_url":"https://github.com/wtfo-guru/flask-nav3"},{"name":"flask-security-too","old_version":"5.3.3","new_version":"5.7.1","repository_url":"https://github.com/pallets-eco/flask-security"},{"name":"flask-sock","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/miguelgrinberg/flask-sock"},{"name":"flask-sqlalchemy","old_version":"2.5.1","new_version":"3.1.1","repository_url":"https://github.com/pallets-eco/flask-sqlalchemy"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.0.3","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"hupper","old_version":"1.10.3","new_version":"1.12.1","repository_url":"https://github.com/Pylons/hupper"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"kubernetes","old_version":"30.1.0","new_version":"35.0.0","repository_url":"https://github.com/kubernetes-client/python"},{"name":"psycopg2","old_version":"2.9.6","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"py-consul","old_version":"1.5.1","new_version":"1.7.1","repository_url":"https://github.com/criteo-forks/py-consul"},{"name":"pygithub","old_version":"1.59.1","new_version":"2.8.1","repository_url":"https://github.com/pygithub/pygithub"},{"name":"python-dxf","old_version":"10.0.0","new_version":"12.1.1","repository_url":"https://github.com/davedoesdev/dxf"},{"name":"qrcode","old_version":"7.4.2","new_version":"8.2","repository_url":"https://github.com/lincolnloop/python-qrcode"},{"name":"redis","old_version":"3.5.3","new_version":"7.1.1","repository_url":"https://github.com/redis/redis-py"},{"name":"sentry-sdk","old_version":"2.6.0","new_version":"2.52.0"},{"name":"sqlalchemy","old_version":"1.4.48","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"sqlalchemy-continuum","old_version":"1.3.14","new_version":"1.6.0","repository_url":"https://github.com/kvesteri/sqlalchemy-continuum"},{"name":"typing-extensions","old_version":"4.7.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"unidecode","old_version":"1.2.0","new_version":"1.4.0","repository_url":"https://github.com/kmike/text-unidecode"},{"name":"urllib3","old_version":"2.2.2","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"bandit","old_version":"1.7.9","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"black","old_version":"24.4.2","new_version":"26.1.0","repository_url":"https://github.com/psf/black"},{"name":"mypy","old_version":"1.11.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"pip-tools","old_version":"7.4.1","new_version":"7.5.3","repository_url":"https://github.com/jazzband/pip-tools"},{"name":"ruff","old_version":"0.5.1","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-pyyaml","old_version":"6.0.12.20240311","new_version":"6.0.12.20250915","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-requests","old_version":"2.32.0.20240712","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":"/requirements","ecosystem":"pip"},"body":"Bumps the all-dependencies group in /requirements with 38 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [bleach](https://github.com/mozilla/bleach) | `6.0.0` | `6.3.0` |\n| [celery](https://github.com/celery/celery) | `5.4.0` | `5.6.2` |\n| [celery-redbeat](https://github.com/sibson/redbeat) | `2.2.0` | `2.3.3` |\n| [cryptography](https://github.com/pyca/cryptography) | `42.0.4` | `46.0.5` |\n| [dockerfile-parse](https://github.com/containerbuildsystem/dockerfile-parse) | `2.0.0` | `2.0.1` |\n| [flask](https://github.com/pallets/flask) | `2.3.2` | `2.3.3` |\n| [flask-admin](https://github.com/pallets-eco/flask-admin) | `1.6.1` | `2.0.2` |\n| [flask-babel](https://github.com/python-babel/flask-babel) | `3.1.0` | `4.0.0` |\n| [flask-debugtoolbar](https://github.com/pallets-eco/flask-debugtoolbar) | `0.14.1` | `0.16.0` |\n| [flask-mail](https://github.com/pallets-eco/flask-mail) | `0.9.1` | `0.10.0` |\n| [flask-migrate](https://github.com/miguelgrinberg/flask-migrate) | `3.0.1` | `4.1.0` |\n| [flask-nav3](https://github.com/wtfo-guru/flask-nav3) | `0.7.0` | `0.7.2` |\n| [flask-security-too](https://github.com/pallets-eco/flask-security) | `5.3.3` | `5.7.1` |\n| [flask-sock](https://github.com/miguelgrinberg/flask-sock) | `0.6.0` | `0.7.0` |\n| [flask-sqlalchemy](https://github.com/pallets-eco/flask-sqlalchemy) | `2.5.1` | `3.1.1` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.0.3` |\n| [hupper](https://github.com/Pylons/hupper) | `1.10.3` | `1.12.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [kubernetes](https://github.com/kubernetes-client/python) | `30.1.0` | `35.0.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.6` | `2.9.11` |\n| [py-consul](https://github.com/criteo-forks/py-consul) | `1.5.1` | `1.7.1` |\n| [pygithub](https://github.com/pygithub/pygithub) | `1.59.1` | `2.8.1` |\n| [python-dxf](https://github.com/davedoesdev/dxf) | `10.0.0` | `12.1.1` |\n| [qrcode](https://github.com/lincolnloop/python-qrcode) | `7.4.2` | `8.2` |\n| [redis](https://github.com/redis/redis-py) | `3.5.3` | `7.1.1` |\n| [sentry-sdk[flask]](https://github.com/getsentry/sentry-python) | `2.6.0` | `2.52.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `1.4.48` | `2.0.46` |\n| [sqlalchemy-continuum](https://github.com/kvesteri/sqlalchemy-continuum) | `1.3.14` | `1.6.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.7.1` | `4.15.0` |\n| [unidecode](https://github.com/kmike/text-unidecode) | `1.2.0` | `1.4.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.2` | `2.6.3` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.9` | `1.9.3` |\n| [black](https://github.com/psf/black) | `24.4.2` | `26.1.0` |\n| [mypy](https://github.com/python/mypy) | `1.11.0` | `1.19.1` |\n| [pip-tools](https://github.com/jazzband/pip-tools) | `7.4.1` | `7.5.3` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.5.1` | `0.15.0` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.20240311` | `6.0.12.20250915` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20240712` | `2.32.4.20260107` |\n\nUpdates `bleach` from 6.0.0 to 6.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mozilla/bleach/blob/main/CHANGES\"\u003ebleach's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.3.0 (October 27th, 2025)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/756\"\u003e#756\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.14. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/758\"\u003e#758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wbr handling. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/488\"\u003e#488\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 6.2.0 (October 29th, 2024)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.8. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/737\"\u003e#737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.13. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove six depdenncy. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate known-good versions for tinycss2. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/732\"\u003e#732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix additional \u0026lt; followed by characters and EOF issues. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 6.1.0 (October 6th, 2023)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.7. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/709\"\u003e#709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.12. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/710\"\u003e#710\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/mozilla/bleach/commit/5546d5dbce60d08ccb99d981778d74044d646d4e\"\u003e\u003ccode\u003e5546d5d\u003c/code\u003e\u003c/a\u003e chore: prep for 6.3.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/88df3ff23fb2a43e174b3fdfe9191ef516de868a\"\u003e\u003ccode\u003e88df3ff\u003c/code\u003e\u003c/a\u003e chore: fix readthedocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/d8b2fb45b2606515c58787c223d6605c6c70868f\"\u003e\u003ccode\u003ed8b2fb4\u003c/code\u003e\u003c/a\u003e fix: fix wbr handling (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/488\"\u003e#488\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/55e48cedb20bda23940ab34753a1fb378d5d30b9\"\u003e\u003ccode\u003e55e48ce\u003c/code\u003e\u003c/a\u003e chore: add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/758\"\u003e#758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/a4d6cddac6e338c3d6f84c755a5fcb32e9e18fba\"\u003e\u003ccode\u003ea4d6cdd\u003c/code\u003e\u003c/a\u003e chore: drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/756\"\u003e#756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/172d92faef543a83c6760c63c32749586cdd564b\"\u003e\u003ccode\u003e172d92f\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/df88612f2e9daf8f4ee23cf0e29b712d9d9147b6\"\u003e\u003ccode\u003edf88612\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/cbcf6b18d19aeb7777699f9385013d0a04052b68\"\u003e\u003ccode\u003ecbcf6b1\u003c/code\u003e\u003c/a\u003e Bump actions/cache from 4.2.3 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/d9aa7ef592d57dda56e26ba31d06e1b279c58eca\"\u003e\u003ccode\u003ed9aa7ef\u003c/code\u003e\u003c/a\u003e Switch from dependabot reviewers to CODEOWNERS\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/06f0f76cc68112bda3fa101d1730d5ba914d54a1\"\u003e\u003ccode\u003e06f0f76\u003c/code\u003e\u003c/a\u003e Update setuptools, wheel, and twine for devs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mozilla/bleach/compare/v6.0.0...v6.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `celery` from 5.4.0 to 5.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/celery/releases\"\u003ecelery's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.6.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix recursive WorkController instantiation in DjangoWorkerFixup + AttributeError when pool_cls is a string by \u003ca href=\"https://github.com/bruunotrindade\"\u003e\u003ccode\u003e@​bruunotrindade\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10045\"\u003ecelery/celery#10045\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBugfix: Revoked tasks now immediately update backend status to REVOKED by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9869\"\u003ecelery/celery#9869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.2 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10049\"\u003ecelery/celery#10049\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/bruunotrindade\"\u003e\u003ccode\u003e@​bruunotrindade\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10045\"\u003ecelery/celery#10045\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/celery/compare/v5.6.1...v5.6.2\"\u003ehttps://github.com/celery/celery/compare/v5.6.1...v5.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.6.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix Redis Sentinel ACL authentication support by \u003ca href=\"https://github.com/anthonykuzmich7\"\u003e\u003ccode\u003e@​anthonykuzmich7\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10013\"\u003ecelery/celery#10013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Broker heartbeats not sent during graceful shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9986\"\u003ecelery/celery#9986\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs \u003ca href=\"https://redirect.github.com/celery/celery/issues/5410\"\u003e#5410\u003c/a\u003e -- Document confirm_publish broker transport option by \u003ca href=\"https://github.com/JaeHyuckSa\"\u003e\u003ccode\u003e@​JaeHyuckSa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10016\"\u003ecelery/celery#10016\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclose DB pools only in prefork mode by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10020\"\u003ecelery/celery#10020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Avoid unnecessary Django database connection creation during cleanup by \u003ca href=\"https://github.com/snopoke\"\u003e\u003ccode\u003e@​snopoke\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10015\"\u003ecelery/celery#10015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereliable prefork detection by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10023\"\u003ecelery/celery#10023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter coverage by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10029\"\u003ecelery/celery#10029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: clarify \u003ccode\u003eresult_extended\u003c/code\u003e vs periodic task metadata and show \u003ccode\u003eheaders[\u0026quot;periodic_task_name\u0026quot;]\u003c/code\u003e example by \u003ca href=\"https://github.com/SpaceShaman\"\u003e\u003ccode\u003e@​SpaceShaman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10030\"\u003ecelery/celery#10030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop importing pytest_subtests by \u003ca href=\"https://github.com/cjwatson\"\u003e\u003ccode\u003e@​cjwatson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10032\"\u003ecelery/celery#10032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly use exceptiongroup backport for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/cjwatson\"\u003e\u003ccode\u003e@​cjwatson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10033\"\u003ecelery/celery#10033\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.1 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10037\"\u003ecelery/celery#10037\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/anthonykuzmich7\"\u003e\u003ccode\u003e@​anthonykuzmich7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10013\"\u003ecelery/celery#10013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9986\"\u003ecelery/celery#9986\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JaeHyuckSa\"\u003e\u003ccode\u003e@​JaeHyuckSa\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10016\"\u003ecelery/celery#10016\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/snopoke\"\u003e\u003ccode\u003e@​snopoke\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10015\"\u003ecelery/celery#10015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SpaceShaman\"\u003e\u003ccode\u003e@​SpaceShaman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10030\"\u003ecelery/celery#10030\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/celery/compare/v5.6.0...v5.6.1\"\u003ehttps://github.com/celery/celery/compare/v5.6.0...v5.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.6.0\u003c/h2\u003e\n\u003cp\u003eCelery v5.6.0 is now available.\u003c/p\u003e\n\u003ch2\u003eKey Highlights\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.celeryq.dev/en/stable/history/whatsnew-5.6.html\"\u003eWhat's new in Celery 5.6\u003c/a\u003e for a complete overview or read the main highlights below.\u003c/p\u003e\n\u003ch3\u003ePython 3.9 Minimum Version\u003c/h3\u003e\n\u003cp\u003eCelery 5.6.0 drops support for Python 3.8 (EOL). The minimum required Python version is now 3.9. Users still on Python 3.8 must upgrade their Python version before upgrading to Celery 5.6.0.\u003c/p\u003e\n\u003cp\u003eAdditionally, this release includes initial support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eSQS: Reverted to \u003ccode\u003epycurl\u003c/code\u003e from \u003ccode\u003eurllib3\u003c/code\u003e\u003c/h3\u003e\n\u003cp\u003eThe switch from \u003ccode\u003epycurl\u003c/code\u003e to \u003ccode\u003eurllib3\u003c/code\u003e for the SQS transport (introduced in Celery 5.5.0 via Kombu) has been reverted due to critical issues affecting SQS users.\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/celery/blob/main/Changelog.rst\"\u003ecelery's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e5.6.2\u003c/h1\u003e\n\u003cp\u003e:release-date: 2026-01-04\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eWhat's Changed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Fix recursive WorkController instantiation in DjangoWorkerFixup + AttributeError when pool_cls is a string ([#10045](https://github.com/celery/celery/issues/10045))\n- Bugfix: Revoked tasks now immediately update backend status to REVOKED ([#9869](https://github.com/celery/celery/issues/9869))\n- Prepare for release: v5.6.2 ([#10049](https://github.com/celery/celery/issues/10049))\n\u003cp\u003e.. _version-5.6.1:\u003c/p\u003e\n\u003ch1\u003e5.6.1\u003c/h1\u003e\n\u003cp\u003e:release-date: 2025-12-29\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eWhat's Changed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix Redis Sentinel ACL authentication support (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10013\"\u003e#10013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix: Broker heartbeats not sent during graceful shutdown (\u003ca href=\"https://redirect.github.com/celery/celery/issues/9986\"\u003e#9986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edocs \u003ca href=\"https://redirect.github.com/celery/celery/issues/5410\"\u003e#5410\u003c/a\u003e -- Document confirm_publish broker transport option (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10016\"\u003e#10016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eclose DB pools only in prefork mode (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10020\"\u003e#10020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix: Avoid unnecessary Django database connection creation during cleanup (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10015\"\u003e#10015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereliable prefork detection (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10023\"\u003e#10023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebetter coverage (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10029\"\u003e#10029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: clarify \u003ccode\u003eresult_extended\u003c/code\u003e vs periodic task metadata and show \u003ccode\u003eheaders[\u0026quot;periodic_task_name\u0026quot;]\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10030\"\u003e#10030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop importing pytest_subtests (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10032\"\u003e#10032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly use exceptiongroup backport for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10033\"\u003e#10033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10037\"\u003e#10037\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _version-5.6.0:\u003c/p\u003e\n\u003ch1\u003e5.6.0\u003c/h1\u003e\n\u003cp\u003e:release-date: 2025-11-30\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eCelery v5.6.0 is now available.\u003c/p\u003e\n\u003cp\u003eKey Highlights\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nSee :ref:`whatsnew-5.6` for a complete overview or read the main highlights below.\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/celery/celery/commit/6a43c846f183ef0cbade24f4b9a8f7a6ea113b44\"\u003e\u003ccode\u003e6a43c84\u003c/code\u003e\u003c/a\u003e Prepare for release: v5.6.2 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10049\"\u003e#10049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/333a82f746734151c5cbe848916085455b0a3748\"\u003e\u003ccode\u003e333a82f\u003c/code\u003e\u003c/a\u003e Bugfix: Revoked tasks now immediately update backend status to REVOKED (\u003ca href=\"https://redirect.github.com/celery/celery/issues/9869\"\u003e#9869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/9d6ab110d947270c4edf0b42454266d2954e653d\"\u003e\u003ccode\u003e9d6ab11\u003c/code\u003e\u003c/a\u003e Fix recursive WorkController instantiation in DjangoWorkerFixup + AttributeEr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/21dbc73f81d2fae058de49e665afaa1cd92da5c0\"\u003e\u003ccode\u003e21dbc73\u003c/code\u003e\u003c/a\u003e Prepare for release: v5.6.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10037\"\u003e#10037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/ba20bed7723c684d12ddd62d6a7c0c0d901b3351\"\u003e\u003ccode\u003eba20bed\u003c/code\u003e\u003c/a\u003e Only use exceptiongroup backport for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10033\"\u003e#10033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/21675299bc2d10c648448ec5221136e07c1eec1a\"\u003e\u003ccode\u003e2167529\u003c/code\u003e\u003c/a\u003e Stop importing pytest_subtests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/0527296acb1f1790788301d4395ba6d5ce2a9704\"\u003e\u003ccode\u003e0527296\u003c/code\u003e\u003c/a\u003e Bump google-cloud-firestore from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/5f8659bdba4561796d66e938a1e2c71d4489562f\"\u003e\u003ccode\u003e5f8659b\u003c/code\u003e\u003c/a\u003e Clarify 'result_extended' setting usage in tasks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/f19db7008682c782d85e69b5ce736970491752ea\"\u003e\u003ccode\u003ef19db70\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.19.0 to 1.19.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10028\"\u003e#10028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/6da72bde60553a1c350eef1e17d834d004ed099d\"\u003e\u003ccode\u003e6da72bd\u003c/code\u003e\u003c/a\u003e better coverage (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10029\"\u003e#10029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/celery/celery/compare/v5.4.0...v5.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `celery-redbeat` from 2.2.0 to 2.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sibson/redbeat/blob/main/CHANGES.txt\"\u003ecelery-redbeat's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.3dev (unreleased)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8 and add CI coverage through Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.3 (2025-07-02)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd Python 3.12 support, thanks \u003ca href=\"https://github.com/AnkiHubSoftware\"\u003e\u003ccode\u003e@​AnkiHubSoftware\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, update RedBeatSchedulerEntry definitions for improved type safety and correctness, thanks \u003ca href=\"https://github.com/sotosapp\"\u003e\u003ccode\u003e@​sotosapp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, Redbeat no longer updating tasks definitions on Redis \u003ca href=\"https://redirect.github.com/sibson/redbeat/issues/289\"\u003e#289\u003c/a\u003e, thanks \u003ca href=\"https://github.com/semoac\"\u003e\u003ccode\u003e@​semoac\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci, fix testpypi publish by checking out source before version update\u003c/li\u003e\n\u003cli\u003etest, pin fakeredis\u0026lt;2.27.0 for Python 3.8 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0 (2025-02-23)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebugfix, allow disabling of lock with redbeat_lock_key = None, thanks \u003ca href=\"https://github.com/jscaria\"\u003e\u003ccode\u003e@​jscaria\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/molog\"\u003e\u003ccode\u003e@​molog\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/bertosantamaria\"\u003e\u003ccode\u003e@​bertosantamaria\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, track changes to primary in Sentinel, thanks \u003ca href=\"https://github.com/Niccolum\"\u003e\u003ccode\u003e@​Niccolum\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, static entries honour last_run_at, thanks \u003ca href=\"https://github.com/kchamz\"\u003e\u003ccode\u003e@​kchamz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc updates, thanks \u003ca href=\"https://github.com/miketheman\"\u003e\u003ccode\u003e@​miketheman\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cikay\"\u003e\u003ccode\u003e@​cikay\u003c/code\u003e\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/sibson/redbeat/commit/2b85c88951fdd2964610819c1a59e4914e4c205b\"\u003e\u003ccode\u003e2b85c88\u003c/code\u003e\u003c/a\u003e prepare for release of 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/3d107dd7cf5c310bcd05fd8ba76da622a0f84b13\"\u003e\u003ccode\u003e3d107dd\u003c/code\u003e\u003c/a\u003e update for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/30e812dd1a178dca02390c4f4a3e8fe79c43ca39\"\u003e\u003ccode\u003e30e812d\u003c/code\u003e\u003c/a\u003e makefile: add version target using grep for warning-free version check\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/1242fde248ed7aeebe7cd148f873977f0face2e8\"\u003e\u003ccode\u003e1242fde\u003c/code\u003e\u003c/a\u003e update changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/f35e31cfb0f9c0cf6662821cc4d4d7ec1d45d144\"\u003e\u003ccode\u003ef35e31c\u003c/code\u003e\u003c/a\u003e ci: fetch full git history for pbr versioning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/acf82610cb0fab5caa3418c42efcfb4715686d2e\"\u003e\u003ccode\u003eacf8261\u003c/code\u003e\u003c/a\u003e build: switch to pbr for dynamic versioning and simplify workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/a317b5ff3a4f7b6508c8d91ae55f3ac736d646be\"\u003e\u003ccode\u003ea317b5f\u003c/code\u003e\u003c/a\u003e bump version for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/5e185f63ba10458545ec4c8a91747006da65de63\"\u003e\u003ccode\u003e5e185f6\u003c/code\u003e\u003c/a\u003e ci: use .dev0.\u0026lt;githash\u0026gt; for testpypi version (PEP 440/PyPI compliant)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/f384d757f8f58ca2cd26d36c13dfb8971461d3de\"\u003e\u003ccode\u003ef384d75\u003c/code\u003e\u003c/a\u003e ci: ensure PEP 440 compliant version for testpypi with git hash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/bfc520b778a0234815917e3aba472a27ffabc6f6\"\u003e\u003ccode\u003ebfc520b\u003c/code\u003e\u003c/a\u003e test: pin fakeredis\u0026lt;2.27.0 for Python 3.8 support (see comment)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sibson/redbeat/compare/v2.2.0...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cryptography` from 42.0.4 to 46.0.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst\"\u003ecryptography's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e46.0.5 - 2026-02-10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* An attacker could create a malicious public key that reveals portions of your\n  private key when using certain uncommon elliptic curves (binary curves).\n  This version now includes additional security checks to prevent this attack.\n  This issue only affects binary elliptic curves, which are rarely used in\n  real-world applications. Credit to **XlabAI Team of Tencent Xuanwu Lab and\n  Atuin Automated Vulnerability Discovery Engine** for reporting the issue.\n  **CVE-2026-26007**\n* Support for ``SECT*`` binary elliptic curves is deprecated and will be\n  removed in the next release.\n\u003cp\u003e.. v46-0-4:\u003c/p\u003e\n\u003cp\u003e46.0.4 - 2026-01-27\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDropped support for win_arm64 wheels\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eUpdated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.5.5.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _v46-0-3:\u003c/p\u003e\n\u003cp\u003e46.0.3 - 2025-10-15\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Fixed compilation when using LibreSSL 4.2.0.\n\u003cp\u003e.. _v46-0-2:\u003c/p\u003e\n\u003cp\u003e46.0.2 - 2025-09-30\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.5.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _v46-0-1:\u003c/p\u003e\n\u003cp\u003e46.0.1 - 2025-09-16\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Fixed an issue where users installing via ``pip`` on Python 3.14 development\n  versions would not properly install a dependency.\n* Fixed an issue building the free-threaded macOS 3.14 wheels.\n\u003cp\u003e.. _v46-0-0:\u003c/p\u003e\n\u003cp\u003e46.0.0 - 2025-09-16\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBACKWARDS INCOMPATIBLE:\u003c/strong\u003e Support for Python 3.7 has been removed.\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/pyca/cryptography/commit/06e120e682cb200e3f7050c02f0bcdac90c4c6ad\"\u003e\u003ccode\u003e06e120e\u003c/code\u003e\u003c/a\u003e bump version for 46.0.5 release (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14289\"\u003e#14289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/0eebb9dbb6343d9bc1d91e5a2482ed4e054a6d8c\"\u003e\u003ccode\u003e0eebb9d\u003c/code\u003e\u003c/a\u003e EC check key on cofactor \u0026gt; 1 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14287\"\u003e#14287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/bedf6e186b814f69a3f54f51252c23a71d44ed2e\"\u003e\u003ccode\u003ebedf6e1\u003c/code\u003e\u003c/a\u003e fix openssl version on 46 branch (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14220\"\u003e#14220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/e6f44fc8e6391f05d719fb9d369692325b87a471\"\u003e\u003ccode\u003ee6f44fc\u003c/code\u003e\u003c/a\u003e bump for 46.0.4 and drop win arm64 due to CI issues (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14217\"\u003e#14217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/c0af4dd7b75921bbe9f1d41a03dbd4b64a9e3403\"\u003e\u003ccode\u003ec0af4dd\u003c/code\u003e\u003c/a\u003e release 46.0.3 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13681\"\u003e#13681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/99efe5ad150a56efadafacaffd0e3ee319373904\"\u003e\u003ccode\u003e99efe5a\u003c/code\u003e\u003c/a\u003e bump version for 46.0.2 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/e735cfc27502320101c130335c556394a125ba52\"\u003e\u003ccode\u003ee735cfc\u003c/code\u003e\u003c/a\u003e release 46.0.1 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13450\"\u003e#13450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/4e457ffba43a6d87efc63c33041e2081438dd8a4\"\u003e\u003ccode\u003e4e457ff\u003c/code\u003e\u003c/a\u003e Explicitly specify python in mac uv build invocation (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13447\"\u003e#13447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/2726efdb6d67f1c90cf9c6062d9fe051965586f8\"\u003e\u003ccode\u003e2726efd\u003c/code\u003e\u003c/a\u003e Depend on CFFI 2.0.0 or newer on Python \u0026gt; 3.8 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13448\"\u003e#13448\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/62230623d183706632c0eb7822c96ac95e3710a8\"\u003e\u003ccode\u003e6223062\u003c/code\u003e\u003c/a\u003e release 46.0.0 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13446\"\u003e#13446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyca/cryptography/compare/42.0.4...46.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dockerfile-parse` from 2.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/releases\"\u003edockerfile-parse's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch1\u003eImprovements\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRemoval of python-six module\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/containerbuildsystem/dockerfile-parse/commit/3a4360f78e60ac72b6ffc627135fca27c180c4ad\"\u003e\u003ccode\u003e3a4360f\u003c/code\u003e\u003c/a\u003e Automatic commit of package [python-dockerfile-parse] release [2.0.1-1].\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/commit/7d0e60413dfd6cb7f6dbe2ecb841a8199f6a43a7\"\u003e\u003ccode\u003e7d0e604\u003c/code\u003e\u003c/a\u003e fix(pylint): address broad-exception-raised\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/commit/9cd9cde8a1502e04c9078242964b4bb22eb00c77\"\u003e\u003ccode\u003e9cd9cde\u003c/code\u003e\u003c/a\u003e fix(spec): remove six module\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/compare/2.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 2.3.2 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/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.3\u003c/h2\u003e\n\u003cp\u003eThis is a fix release for the 2.3.x feature branch.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eChanges: \u003ca href=\"https://flask.palletsprojects.com/en/2.3.x/changes/#version-2-3-3\"\u003ehttps://flask.palletsprojects.com/en/2.3.x/changes/#version-2-3-3\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMilestone: \u003ca href=\"https://github.com/pallets/flask/milestone/31?closed=1\"\u003ehttps://github.com/pallets/flask/milestone/31?closed=1\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/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 2.3.3\u003c/h2\u003e\n\u003cp\u003eReleased 2023-08-21\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.12 compatibility.\u003c/li\u003e\n\u003cli\u003eRequire Werkzeug \u0026gt;= 2.3.7.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e instead of \u003ccode\u003esetuptools\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eRefactor how an app's root and instance paths are determined. :issue:\u003ccode\u003e5160\u003c/code\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/pallets/flask/commit/3205b53c7cf69d17fee49cac6b84978175b7dd73\"\u003e\u003ccode\u003e3205b53\u003c/code\u003e\u003c/a\u003e release version 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/9f9550247a2798b9dcc28081c15e266442f4e28a\"\u003e\u003ccode\u003e9f95502\u003c/code\u003e\u003c/a\u003e bump werkzeug 2.3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/02736640095ed6d5a4a409a9658eaca373fd1d48\"\u003e\u003ccode\u003e0273664\u003c/code\u003e\u003c/a\u003e Update dispatch by path example (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5217\"\u003e#5217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/a887e179b8af6a9c582a7918f9f8499ab58032cc\"\u003e\u003ccode\u003ea887e17\u003c/code\u003e\u003c/a\u003e clean up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/aa6d4c3e92bd11a7d449f49f524e54bbb88b89c0\"\u003e\u003ccode\u003eaa6d4c3\u003c/code\u003e\u003c/a\u003e update dispatch-by-path example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/826514b8eb18f6c314cf566630253d35c89e42c3\"\u003e\u003ccode\u003e826514b\u003c/code\u003e\u003c/a\u003e fix flake8 bugbear findings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/6d266f63633f5f127165d4ef836db14a59bbc106\"\u003e\u003ccode\u003e6d266f6\u003c/code\u003e\u003c/a\u003e Pass maxsplit via kwarg to re.split (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5215\"\u003e#5215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/17e146ad949b3d80438faf95e81b53c543cb50f5\"\u003e\u003ccode\u003e17e146a\u003c/code\u003e\u003c/a\u003e Pass maxsplit via kwarg to re.split\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/8a72b741616556b4f739ea79ab502c2d2038844a\"\u003e\u003ccode\u003e8a72b74\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5211\"\u003e#5211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/7255be9626ab56d81bc0ab86db939fcc1da9bca1\"\u003e\u003ccode\u003e7255be9\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/pallets/flask/compare/2.3.2...2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-admin` from 1.6.1 to 2.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-admin/releases\"\u003eflask-admin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for Python 3.14: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2685\"\u003epallets-eco/flask-admin#2685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a MenuDivider item for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2696\"\u003epallets-eco/flask-admin#2696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eField errors are now shown in red text for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2699\"\u003epallets-eco/flask-admin#2699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix documentation\u003c/li\u003e\n\u003cli\u003eUpdate arabic translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.0.0\u003c/h2\u003e\n\u003cp\u003eBreaking changes from v1.6.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for Python \u0026lt;3.10\u003c/li\u003e\n\u003cli\u003eUse of the \u003ccode\u003eboto\u003c/code\u003e library has been replaced by \u003ccode\u003eboto3\u003c/code\u003e. S3FileAdmin and S3Storage now accept an \u003ccode\u003es3_client\u003c/code\u003e parameter taking a \u003ccode\u003eboto3.client('s3')\u003c/code\u003e instance rather than \u003ccode\u003eaws_access_key_id\u003c/code\u003e, \u003ccode\u003eaws_secret_access_key\u003c/code\u003e, and \u003ccode\u003eregion\u003c/code\u003e parameters.\u003c/li\u003e\n\u003cli\u003eAzure Blob Storage SDK has been upgraded from the legacy version (v2) to the latest version (v12). AzureFileAdmin now accept \u003ccode\u003eblob_service_client\u003c/code\u003e rather than \u003ccode\u003econnection_string\u003c/code\u003e to give more flexibility with connection types.\u003c/li\u003e\n\u003cli\u003eFlask-BabelEx is no longer supported; the package is no longer maintained and Flask-Babel is recommended/active instead.\u003c/li\u003e\n\u003cli\u003eMongoengine support in Flask-Admin no longer uses Flask-Mongoengine, as that library is no longer actively maintained.\u003c/li\u003e\n\u003cli\u003eBootstrap2 and Bootstrap3 themes are no longer available.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAdmin()\u003c/code\u003e now takes a \u003ccode\u003etheme\u003c/code\u003e parameter that encapsulates all of the configuration options for theming the admin instance. This replaces the \u003ccode\u003etemplate_mode\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAll remaining Flask-Admin config has been namespaced under \u003ccode\u003eFLASK_ADMIN_\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eConfig variable name\u003c/th\u003e\n\u003cth\u003eWhat's changed\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eFLASK_ADMIN_SWATCH\u003c/td\u003e\n\u003ctd\u003eRemoved; use \u003c!-- raw HTML omitted --\u003eTheme(swatch=...)\u003c!-- raw HTML omitted --\u003e instead\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFLASK_ADMIN_FLUID_LAYOUT\u003c/td\u003e\n\u003ctd\u003eRemoved; use \u003c!-- raw HTML omitted --\u003eTheme(fluid=...)\u003c!-- raw HTML omitted --\u003e instead\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_MAP_ID\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_MAP_ID\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_SEARCH\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_SEARCH\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_ACCESS_TOKEN\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_ACCESS_TOKEN\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGOOGLE_MAPS_API_KEY\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_GOOGLE_MAPS_API_KEY\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDEFAULT_CENTER_LAT\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LAT\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDEFAULT_CENTER_LONG\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LONG\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eADMIN_RAISE_ON_INTEGRITY_ERROR\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_RAISE_ON_INTEGRITY_ERROR\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eADMIN_RAISE_ON_VIEW_EXCEPTION\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_RAISE_ON_VIEW_EXCEPTION\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eNew functionality:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python \u0026lt;=3.13\u003c/li\u003e\n\u003cli\u003eThe default query for pymongo can be overridden\u003c/li\u003e\n\u003cli\u003eFlask async routes are supported\u003c/li\u003e\n\u003cli\u003eFlask-Admin now supports the \u003ccode\u003ehost_matching\u003c/code\u003e mode of Flask apps. See documentation for how to configure this where needed.\u003c/li\u003e\n\u003cli\u003eFlask-Admin is now compatible with SQLAlchemy v2+, Flask v3+, WTForms v3+, and Pillow v10+.\u003c/li\u003e\n\u003cli\u003eFlask-Admin now declares its dependencies and supported dependency versions more cleanly, including using pip extras. If you use Flask-Admin with SQLAlchemy, for example, you should use \u003ccode\u003epip install flask-admin[sqlalchemy]\u003c/code\u003e or list \u003ccode\u003eflask-admin[sqlalchemy]\u003c/code\u003e in your requirements.txt or pyproject.toml files.\u003c/li\u003e\n\u003cli\u003eApps using content security policies to restrict the assets that can be loaded can now whitelist Flask-Admin's assets by passing a \u003ccode\u003ecsp_nonce_generator\u003c/code\u003e function to the Admin instance. See examples or documentation for how to configure this where needed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epage_size_options\u003c/code\u003e can now be configured on Admin models, to restrict the page sizes that users can select. These are now enforced properly and cannot be bypassed by URL hacking.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eBootstrap menu icons should show up properly and not duplicated\u003c/li\u003e\n\u003cli\u003eRedis CLI commands are now case insensitive\u003c/li\u003e\n\u003cli\u003eSQLAlchemy boolean filters now convert \u0026quot;1\u0026quot; and \u0026quot;0\u0026quot; to Python booleans, which fixes a type coercion issue with psycopg(3).\u003c/li\u003e\n\u003cli\u003eJinja templates can now be loaded in StrictUndefined mode.\u003c/li\u003e\n\u003cli\u003eRemove an implicit dependency on \u003ccode\u003epackaging\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed an error caused by the fallback implementation of \u003ccode\u003egettext()\u003c/code\u003e (when used in templates)\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/pallets-eco/flask-admin/blob/master/doc/changelog.rst\"\u003eflask-admin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for Python 3.14: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2685\"\u003epallets-eco/flask-admin#2685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a MenuDivider item for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2696\"\u003epallets-eco/flask-admin#2696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eField errors are now shown in red text for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2699\"\u003epallets-eco/flask-admin#2699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix documentation\u003c/li\u003e\n\u003cli\u003eUpdate arabic translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eBreaking changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for Python \u0026lt;3.10\u003c/li\u003e\n\u003cli\u003eUse of the \u003ccode\u003eboto\u003c/code\u003e library has been replaced by \u003ccode\u003eboto3\u003c/code\u003e. S3FileAdmin and S3Storage now accept an \u003ccode\u003es3_client\u003c/code\u003e parameter taking a \u003ccode\u003eboto3.client('s3')\u003c/code\u003e instance rather than \u003ccode\u003eaws_access_key_id\u003c/code\u003e, \u003ccode\u003eaws_secret_access_key\u003c/code\u003e, and \u003ccode\u003eregion\u003c/code\u003e parameters.\u003c/li\u003e\n\u003cli\u003eAzure Blob Storage SDK has been upgraded from the legacy version (v2) to the latest version (v12). AzureFileAdmin now accept \u003ccode\u003eblob_service_client\u003c/code\u003e rather than \u003ccode\u003econnection_string\u003c/code\u003e to give more flexibility with connection types.\u003c/li\u003e\n\u003cli\u003eFlask-BabelEx is no longer supported; the package is no longer maintained and Flask-Babel is recommended/active instead.\u003c/li\u003e\n\u003cli\u003eMongoengine support in Flask-Admin no longer uses Flask-Mongoengine, as that library is no longer actively maintained.\u003c/li\u003e\n\u003cli\u003eBootstrap2 and Bootstrap3 themes are no longer available.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAdmin()\u003c/code\u003e now takes a \u003ccode\u003etheme\u003c/code\u003e parameter that encapsulates all of the configuration options for theming the admin instance. This replaces the \u003ccode\u003etemplate_mode\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAll remaining Flask-Admin config has been namespaced under \u003ccode\u003eFLASK_ADMIN_\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. list-table:: Configuration Changes\n:widths: 50 50\n:header-rows: 1\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eConfig variable name\u003c/li\u003e\n\u003cli\u003eWhat's changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eFLASK_ADMIN_SWATCH\u003c/li\u003e\n\u003cli\u003eRemoved; use \u003ccode\u003eTheme(swatch=...)\u003c/code\u003e instead\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eFLASK_ADMIN_FLUID_LAYOUT\u003c/li\u003e\n\u003cli\u003eRemoved; use \u003ccode\u003eTheme(fluid=...)\u003c/code\u003e instead\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_MAP_ID\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_MAP_ID\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_SEARCH\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_SEARCH\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_ACCESS_TOKEN\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_ACCESS_TOKEN\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eGOOGLE_MAPS_API_KEY\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_GOOGLE_MAPS_API_KEY\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eDEFAULT_CENTER_LAT\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LAT\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eDEFAULT_CENTER_LONG\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LONG\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eADMIN_RAISE_ON_INTEGRITY_ERROR\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/pallets-eco/flask-admin/commit/e26bee40d0aaddf7aaf2bc9d1f8949cfed3a709c\"\u003e\u003ccode\u003ee26bee4\u003c/code\u003e\u003c/a\u003e v2.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/6b0a8a03f0ebd3bcf28bfb59390c380c014b031d\"\u003e\u003ccode\u003e6b0a8a0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2696\"\u003e#2696\u003c/a\u003e from samialfattani/feature/menu-divider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/67c5702d102e89c9ab96f5ed87d446595b9cc3a3\"\u003e\u003ccode\u003e67c5702\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2699\"\u003e#2699\u003c/a\u003e from samialfattani/err_desc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/9336e2d56c372ec697360f0d15fa1ddc93e7941f\"\u003e\u003ccode\u003e9336e2d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2685\"\u003e#2685\u003c/a\u003e from pallets-eco/py3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/5368f70b925e85f724e5c91b2f8c894fab2855fe\"\u003e\u003ccode\u003e5368f70\u003c/code\u003e\u003c/a\u003e error discription in red color\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/731281b61d21f9fcc58243a71e5ee4d9574dbe3e\"\u003e\u003ccode\u003e731281b\u003c/code\u003e\u003c/a\u003e filter resource warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/0eb8920a5fcde4eae7d69fb463d6ae1f00dea64f\"\u003e\u003ccode\u003e0eb8920\u003c/code\u003e\u003c/a\u003e add menu divider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/16d36f25e8d06d099db29b7a29d3b4eeb85b8ca5\"\u003e\u003ccode\u003e16d36f2\u003c/code\u003e\u003c/a\u003e Release v2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/4303e46fa9b782c7136803e77f044c4abd39fa17\"\u003e\u003ccode\u003e4303e46\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2692\"\u003e#2692\u003c/a\u003e from samialfattani/fix_arabic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/d923bbc5b163e92beaa2450c9c5a5532da866489\"\u003e\u003ccode\u003ed923bbc\u003c/code\u003e\u003c/a\u003e fix typos\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-admin/compare/v1.6.1...v2.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-babel` from 3.1.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-babel/flask-babel/releases\"\u003eflask-babel's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for end-of-life Python 3.7. Support PyPy 3.9\u003c/li\u003e\n\u003cli\u003eReplace deprecated locked_cached_property decorator with cached_property (\u003ca href=\"https://redirect.github.com/python-babel/flask-babel/issues/230\"\u003e#230\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/python-babel/flask-babel/commit/a754eade39d9850693dd2b645ae8a2545df7fdf7\"\u003e\u003ccode\u003ea754ead\u003c/code\u003e\u003c/a\u003e Bump version: 3.1.1 → 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/d42f50c1f80279931279c076c40e2bacf74b4c15\"\u003e\u003ccode\u003ed42f50c\u003c/code\u003e\u003c/a\u003e Dropping Python 3.7 support, adding PyPy 3.9.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/db5c2a152330d3095aab868752342dad18653852\"\u003e\u003ccode\u003edb5c2a1\u003c/code\u003e\u003c/a\u003e Bump version: 3.1.0 → 3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/6ca29cdc52587488c46f131dbb3b3cd69f4aa78c\"\u003e\u003ccode\u003e6ca29cd\u003c/code\u003e\u003c/a\u003e Merge branch 'jkittner-flask-2-3-deprecation'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/346a45a0e1fbf6fae735c70588754724a0101857\"\u003e\u003ccode\u003e346a45a\u003c/code\u003e\u003c/a\u003e Merge branch 'flask-2-3-deprecation' of github.com:jkittner/flask-babel into ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/dad9165d5cb4494e4473259bf37fc34a21974cad\"\u003e\u003ccode\u003edad9165\u003c/code\u003e\u003c/a\u003e Explicit app factory test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/38f15cd15bdb742cadb81bcb8c8bfb81e0b5a1c5\"\u003e\u003ccode\u003e38f15cd\u003c/code\u003e\u003c/a\u003e Release triggered on public, not creation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/414a5a3dee8639b28ca6edd37e5f91adbc622e37\"\u003e\u003ccode\u003e414a5a3\u003c/code\u003e\u003c/a\u003e replace deprecated locked_cached_property decorator with cached_property\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python-babel/flask-babel/compare/v3.1.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-debugtoolbar` from 0.14.1 to 0.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/releases\"\u003eflask-debugtoolbar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.7 support in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/255\"\u003epallets-eco/flask-debugtoolbar#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire Flask \u0026gt;= 2.3.0 in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/256\"\u003epallets-eco/flask-debugtoolbar#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary Blinker dependency in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/248\"\u003epallets-eco/flask-debugtoolbar#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd static type annotations in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/259\"\u003epallets-eco/flask-debugtoolbar#259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e__version__\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/260\"\u003epallets-eco/flask-debugtoolbar#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eFlask.host_matching\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/274\"\u003epallets-eco/flask-debugtoolbar#274\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.1...0.16.0\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.1...0.16.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.15.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix prob w/using w/o SQLAlchemy by \u003ca href=\"https://github.com/joelburton\"\u003e\u003ccode\u003e@​joelburton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/253\"\u003epallets-eco/flask-debugtoolbar#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump to \u003ccode\u003e0.15.1\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/254\"\u003epallets-eco/flask-debugtoolbar#254\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/joelburton\"\u003e\u003ccode\u003e@​joelburton\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/253\"\u003epallets-eco/flask-debugtoolbar#253\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.0...0.15.1\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.0...0.15.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.15.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd minimal test without extra deps by \u003ca href=\"https://github.com/greyli\"\u003e\u003ccode\u003e@​greyli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/230\"\u003epallets-eco/flask-debugtoolbar#230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire Flask \u0026gt;= 2.2.0 by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/224\"\u003epallets-eco/flask-debugtoolbar#224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd option to dump profiler stats by \u003ca href=\"https://github.com/Dosenpfand\"\u003e\u003ccode\u003e@​Dosenpfand\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/204\"\u003epallets-eco/flask-debugtoolbar#204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einit_app()\u003c/code\u003e method to \u003ccode\u003eDebugPanel\u003c/code\u003e base class by \u003ca href=\"https://github.com/malthejorgensen\"\u003e\u003ccode\u003e@​malthejorgensen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/95\"\u003epallets-eco/flask-debugtoolbar#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport applications using flask.copy_current_request_context by \u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/231\"\u003epallets-eco/flask-debugtoolbar#231\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SQLAlchemy recording warning for versions \u0026gt;= 3 by \u003ca href=\"https://github.com/Jonty\"\u003e\u003ccode\u003e@​Jonty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/233\"\u003epallets-eco/flask-debugtoolbar#233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003edistutils\u003c/code\u003e error on Python 3.12 by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/238\"\u003epallets-eco/flask-debugtoolbar#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Flask version attribute by \u003ca href=\"https://github.com/greyli\"\u003e\u003ccode\u003e@​greyli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/243\"\u003epallets-eco/flask-debugtoolbar#243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix trailing whitespace by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/237\"\u003epallets-eco/flask-debugtoolbar#237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ejquery.tablesorter.js\u003c/code\u003e plugin by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/235\"\u003epallets-eco/flask-debugtoolbar#235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003ejquery\u003c/code\u003e to \u003ccode\u003e1.12.4\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/236\"\u003epallets-eco/flask-debugtoolbar#236\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003ejquery\u003c/code\u003e to \u003ccode\u003e3.7.1\u003c/code\u003e and \u003ccode\u003ejquery-migrate\u003c/code\u003e to \u003ccode\u003e3.4.1\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/241\"\u003epallets-eco/flask-debugtoolbar#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some \u003ccode\u003ejquery\u003c/code\u003e deprecation warnings by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/242\"\u003epallets-eco/flask-debugtoolbar#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace deprecated \u003ccode\u003epkg_resources\u003c/code\u003e with stdlib by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/239\"\u003epallets-eco/flask-debugtoolbar#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent LookupError when accessing debug_toolbars_var by \u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/245\"\u003epallets-eco/flask-debugtoolbar#245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInstall custom Sphinx theme via \u003ccode\u003eextras_require\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/250\"\u003epallets-eco/flask-debugtoolbar#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.readthedocs.yaml\u003c/code\u003e file by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/246\"\u003epallets-eco/flask-debugtoolbar#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump to \u003ccode\u003e0.15.0\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/251\"\u003epallets-eco/flask-debugtoolbar#251\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/malthejorgensen\"\u003e\u003ccode\u003e@​malthejorgensen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/95\"\u003epallets-eco/flask-debugtoolbar#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/231\"\u003epallets-eco/flask-debugtoolbar#231\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Jonty\"\u003e\u003ccode\u003e@​Jonty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/233\"\u003epallets-eco/flask-debugtoolbar#233\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.15.0\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.15.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/pallets-eco/flask-debugtoolbar/commit/98c611ade925e1a615373edcd6313222ea57d221\"\u003e\u003ccode\u003e98c611a\u003c/code\u003e\u003c/a\u003e Release version 0.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/95b02b592036e4d74c1d837d0ef3bba06063aa38\"\u003e\u003ccode\u003e95b02b5\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group across 1 directory with 4 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/287\"\u003e#287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/bd642464f28e053c52a09882665e5bd8af5132da\"\u003e\u003ccode\u003ebd64246\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/283\"\u003e#283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/5671a92e1737699dcce8d792ae0113c150c52a7d\"\u003e\u003ccode\u003e5671a92\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group across 1 directory with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/ad6323994f2ab3226c6056755f535cb1aea62e42\"\u003e\u003ccode\u003ead63239\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/285\"\u003e#285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/23612561077884f355fc34651955757d29289dc6\"\u003e\u003ccode\u003e2361256\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/e7b8136dea5a746195ebd4e9982ec2be8fc9c617\"\u003e\u003ccode\u003ee7b8136\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/280\"\u003e#280\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/ccf5ae22c6ebcd284fa4826bc21f570a624017c3\"\u003e\u003ccode\u003eccf5ae2\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into dependabot/github_actions/github-actions-5070efb06b\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/4e98b183f3060d38028a0e2c47649553b23dc063\"\u003e\u003ccode\u003e4e98b18\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group in /requirements with 2 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/279\"\u003e#279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/5b4f4a0fcd29ed152f8041a386d264a1cd04cc30\"\u003e\u003ccode\u003e5b4f4a0\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-mail` from 0.9.1 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-mail/releases\"\u003eflask-mail's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.10.0\u003c/h2\u003e\n\u003cp\u003eFlask-Mail is now part of the Pallets Community Ecosystem. Pallets is the open source organization that maintains Flask; Pallets-Eco enables community maintenance of related projects. If you are interested in helping maintain this project, please reach out on \u003ca href=\"https://discord.gg/pallets\"\u003ethe Pallets Discord server\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release mainly refreshes the project after its extended hiatus. It now uses the standard Pallets project layout, tools, and configurations. Documentation is now hosted at \u003ca href=\"https://flask-mail.readthedocs.io\"\u003ehttps://flask-mail.readthedocs.io\u003c/a\u003e. The library now exports static type annotations.\u003c/p\u003e\n\u003cp\u003eChanges: \u003ca href=\"https://flask-mail.readthedocs.io/en/latest/changes/#version-0-10-0\"\u003ehttps://flask-mail.readthedocs.io/en/latest/changes/#version-0-10-0\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets-eco/flask-mail/milestone/1?closed=1\"\u003ehttps://github.com/pallets-eco/flask-mail/milestone/1?closed=1\u003c/a\u003e\nPyPI: \u003ca href=\"https://pypi.org/project/Flask-Mail/0.10.0/\"\u003ehttps://pypi.org/project/Flask-Mail/0.10.0/\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python \u0026lt; 3.8.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epyproject.toml\u003c/code\u003e for packaging metadata.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eApply code formatting and linting tools.\u003c/li\u003e\n\u003cli\u003eAdd static type annotations.\u003c/li\u003e\n\u003cli\u003eDeprecate the \u003ccode\u003e__version__\u003c/code\u003e attribute. Use feature detection or \u003ccode\u003eimportlib.metadata.version(\u0026quot;flask-mail\u0026quot;)\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003eIndicate that the deprecated \u003ccode\u003eis_bad_headers\u003c/code\u003e will be removed in the next version.\u003c/li\u003e\n\u003cli\u003eFix the \u003ccode\u003eemail_dispatched\u003c/code\u003e signal to pass the current app as the sender and \u003ccode\u003emessage\u003c/code\u003e as an argument, rather than the other way around.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.data\u003c/code\u003e may not be \u003ccode\u003eNone\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.content_type\u003c/code\u003e will be detected based on \u003ccode\u003efilename\u003c/code\u003e and \u003ccode\u003edata\u003c/code\u003e and will not be \u003ccode\u003eNone\u003c/code\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/pallets-eco/flask-mail/blob/main/CHANGES.md\"\u003eflask-mail's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.10.0\u003c/h2\u003e\n\u003cp\u003eReleased 2024-05-23\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python \u0026lt; 3.8.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epyproject.toml\u003c/code\u003e for packaging metadata.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eApply code formatting and linting tools.\u003c/li\u003e\n\u003cli\u003eAdd static type annotations.\u003c/li\u003e\n\u003cli\u003eDeprecate the \u003ccode\u003e__version__\u003c/code\u003e attribute. Use feature detection or\n\u003ccode\u003eimportlib.metadata.version(\u0026quot;flask-mail\u0026quot;)\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003eIndicate that the deprecated \u003ccode\u003eis_bad_headers\u003c/code\u003e will be removed in the next\nversion.\u003c/li\u003e\n\u003cli\u003eFix the \u003ccode\u003eemail_dispatched\u003c/code\u003e signal to pass the current app as the sender and\n\u003ccode\u003emessage\u003c/code\u003e as an argument, rather than the other way around.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.data\u003c/code\u003e may not be \u003ccode\u003eNone\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.content_type\u003c/code\u003e will be detected based on \u003ccode\u003efilename\u003c/code\u003e and \u003ccode\u003edata\u003c/code\u003e\nand will not be \u003ccode\u003eNone\u003c/code\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/pallets-eco/flask-mail/commit/848ea85f2bf2583d7f0ef58ed55ac1d18f67883a\"\u003e\u003ccode\u003e848ea85\u003c/code\u003e\u003c/a\u003e release version 0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/0ec1f6b59407f064ece6db351e2da86f4f9ea557\"\u003e\u003ccode\u003e0ec1f6b\u003c/code\u003e\u003c/a\u003e remove test pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/846a67ecf442d908c45057d8c39e2a16150d4868\"\u003e\u003ccode\u003e846a67e\u003c/code\u003e\u003c/a\u003e add static type annotations (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/221\"\u003e#221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/9075a7a453839a2d8918635ac517713375d26357\"\u003e\u003ccode\u003e9075a7a\u003c/code\u003e\u003c/a\u003e fix signal argument order (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/7b450bd11060bb2885b107c22593326cf488ebad\"\u003e\u003ccode\u003e7b450bd\u003c/code\u003e\u003c/a\u003e update \u003ccode\u003eis_bad_headers\u003c/code\u003e deprecation message (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/218\"\u003e#218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/56914a8512cade43990ea0161560cef8b9bc7391\"\u003e\u003ccode\u003e56914a8\u003c/code\u003e\u003c/a\u003e deprecate \u003ccode\u003e__version__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/217\"\u003e#217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/1932b747f8323c3225fa306f6f36e561face7368\"\u003e\u003ccode\u003e1932b74\u003c/code\u003e\u003c/a\u003e update project files (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/46bddb7cd0f543c32d79ee449087664143927a61\"\u003e\u003ccode\u003e46bddb7\u003c/code\u003e\u003c/a\u003e Various minor doc updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/214\"\u003e#214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/610faf7d5f7b1cf3f0706bd8ca1aec9bba9fa654\"\u003e\u003ccode\u003e610faf7\u003c/code\u003e\u003c/a\u003e Update docs to use myst-parser (and be written in .md) (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/bede1aca81ebf585cf9d8284e8881c94e8eb269b\"\u003e\u003ccode\u003ebede1ac\u003c/code\u003e\u003c/a\u003e notify 0.8 backward incompatible changes in ChangeLog (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-mail/compare/0.9.1...0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-migrate` from 3.0.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/releases\"\u003eflask-migrate's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 4.1.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.7\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.6\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.5\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.4\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.3\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.2\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.1\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 3.1.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\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/miguelgrinberg/Flask-Migrate/blob/main/CHANGES.md\"\u003eflask-migrate's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eFlask-Migrate Change Log\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.1.0\u003c/strong\u003e - 2025-01-10\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAccept arguments such as \u003ccode\u003e--directory\u003c/code\u003e in environment variables \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/553\"\u003e#553\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/12a181ce0542659f10b4ce154a10cfd41fa1f501\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix minor typos in documentation \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/552\"\u003e#552\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/3b073a2c500303894c495d2e4fa0ef449b6a2833\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eKevin Kirsche\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.7\u003c/strong\u003e - 2024-03-11\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegression from \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/438\"\u003e#438\u003c/a\u003e: check \u003ccode\u003eg.x_arg\u003c/code\u003e exists before accessing it \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/541\"\u003e#541\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7e8032c61e5c47f4e50b03dcf98c3b20dd5a8e55\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eSkye Im\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.6\u003c/strong\u003e - 2024-03-09\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAccept \u003ccode\u003e-x\u003c/code\u003e options for all db commands \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/438\"\u003e#438\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/6f3f889c36030134f87dc1db327c2385d873a4d6\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e--purge\u003c/code\u003e flag to the \u003ccode\u003estamp\u003c/code\u003e command \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/540\"\u003e#540\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/af67bb093df5652c867b88880c5934bfc68313cc\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eJono N\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.5\u003c/strong\u003e - 2023-09-12\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCompatibility fixes for Flask-SQLAlchemy \u0026gt;= 3.1 \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/526\"\u003e#526\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/f562178bbe1912912f3cb6877cbae8b0899c74da\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eDavid Lord\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eprocess_revision_directives\u003c/code\u003e option to be configurable \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/523\"\u003e#523\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/821e37fcc4a5e339f197153cdbb4dd2316cbd44b\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003ellc\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eStop testing Python 3.7, as Flask-SQLAlchemy 3.1 stopped supporting it (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/8d175193f00bf4e5578f0142d011093d8cd53d57\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.4\u003c/strong\u003e - 2023-02-02\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly obtain database URL with SQLAlchemy 2.0 \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/505\"\u003e#505\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/c8cd02c5d3d43bbab462b863db5417b5d69228bb\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.3\u003c/strong\u003e - 2023-01-29\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemove legacy \u003cstrong\u003efuture\u003c/strong\u003e import in Alembic templates \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/504\"\u003e#504\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7a388cfe320254735f4ed65ac655caaf0cae8b28\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003ePamela Fox\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eAdd SQLAlchemy 1.4 and 2.0 to the test matrix (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7a725f2e3267f1c3bb4920cd3bff3a9ff1d7eb6e\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSwitch to pytest as test runner (\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/cabotage/cabotage-app/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cabotage%2Fcabotage-app/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"},{"uuid":"3898247049","node_id":"PR_kwDOKO3IB87Bje1Z","number":69,"state":"closed","title":"requirements: bump the pip-minor-patch group with 50 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-18T14:32:56.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-04T20:16:39.000Z","updated_at":"2026-02-18T14:33:26.000Z","time_to_close":1188977,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"requirements: bump","group_name":"pip-minor-patch","update_count":50,"packages":[{"name":"attrs","old_version":"25.3.0","new_version":"25.4.0","repository_url":"https://github.com/sponsors/hynek"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"incremental","old_version":"24.7.2","new_version":"24.11.0","repository_url":"https://github.com/twisted/incremental"},{"name":"psutil","old_version":"7.0.0","new_version":"7.2.2","repository_url":"https://github.com/giampaolo/psutil"},{"name":"typing-extensions","old_version":"4.14.0","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"markdown","old_version":"3.8","new_version":"3.10.1","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"coverage","old_version":"7.9.1","new_version":"7.13.3","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"mypy","old_version":"1.16.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-zope","old_version":"1.0.12","new_version":"1.0.14","repository_url":"https://github.com/Shoobx/mypy-zope"},{"name":"alembic","old_version":"1.18.1","new_version":"1.18.3","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"boto3","old_version":"1.38.36","new_version":"1.42.41","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.36","new_version":"1.42.41","repository_url":"https://github.com/boto/botocore"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"dill","old_version":"0.4.0","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"evalidate","old_version":"2.0.5","new_version":"2.1.3","repository_url":"https://github.com/yaroslaff/evalidate"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.3.1","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"lz4","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/python-lz4/python-lz4"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"brotli","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/google/brotli"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.20","repository_url":"https://github.com/getmoto/moto"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyopenssl","old_version":"25.1.0","new_version":"25.3.0","repository_url":"https://github.com/pyca/pyopenssl"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.14.0","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"s3transfer","old_version":"0.13.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"sqlalchemy","old_version":"2.0.41","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"urllib3","old_version":"2.5.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"zope-event","old_version":"6.0","new_version":"6.1","repository_url":"https://github.com/zopefoundation/zope.event"},{"name":"altgraph","old_version":"0.17.4","new_version":"0.17.5","repository_url":"https://github.com/ronaldoussoren/altgraph"},{"name":"pyinstaller","old_version":"6.14.1","new_version":"6.18.0","repository_url":"https://github.com/pyinstaller/pyinstaller"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"pycairo","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/pygobject/pycairo"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-spelling","old_version":"8.0.1","new_version":"8.0.2","repository_url":"https://github.com/sphinx-contrib/spelling"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"click","old_version":"8.2.1","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"docutils","old_version":"0.21.2","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"pyenchant","old_version":"3.2.2","new_version":"3.3.0","repository_url":"https://github.com/pyenchant/pyenchant"},{"name":"psycopg2-binary","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"pg8000","old_version":"1.31.2","new_version":"1.31.5","repository_url":"https://github.com/tlocke/pg8000"},{"name":"scramp","old_version":"1.4.5","new_version":"1.4.8","repository_url":"https://github.com/tlocke/scramp"},{"name":"wheel","old_version":"0.45.1","new_version":"0.46.3","repository_url":"https://github.com/pypa/wheel"},{"name":"build","old_version":"1.2.2.post1","new_version":"1.4.0","repository_url":"https://github.com/pypa/build"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-minor-patch group with 50 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [attrs](https://github.com/sponsors/hynek) | `25.3.0` | `25.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [incremental](https://github.com/twisted/incremental) | `24.7.2` | `24.11.0` |\n| [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.0` | `4.15.0` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.8` | `3.10.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.9.1` | `7.13.3` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.19.1` |\n| [mypy-zope](https://github.com/Shoobx/mypy-zope) | `1.0.12` | `1.0.14` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.18.1` | `1.18.3` |\n| [boto3](https://github.com/boto/boto3) | `1.38.36` | `1.42.41` |\n| [botocore](https://github.com/boto/botocore) | `1.38.36` | `1.42.41` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [dill](https://github.com/uqfoundation/dill) | `0.4.0` | `0.4.1` |\n| [evalidate](https://github.com/yaroslaff/evalidate) | `2.0.5` | `2.1.3` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.3.1` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [lz4](https://github.com/python-lz4/python-lz4) | `4.4.4` | `4.4.5` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [brotli](https://github.com/google/brotli) | `1.1.0` | `1.2.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.20` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyopenssl](https://github.com/pyca/pyopenssl) | `25.1.0` | `25.3.0` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.0` | `0.15.0` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.13.0` | `0.16.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.41` | `2.0.46` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.5.0` | `2.6.3` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.5` |\n| [zope-event](https://github.com/zopefoundation/zope.event) | `6.0` | `6.1` |\n| [altgraph](https://github.com/ronaldoussoren/altgraph) | `0.17.4` | `0.17.5` |\n| [pyinstaller](https://github.com/pyinstaller/pyinstaller) | `6.14.1` | `6.18.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [pycairo](https://github.com/pygobject/pycairo) | `1.28.0` | `1.29.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-spelling](https://github.com/sphinx-contrib/spelling) | `8.0.1` | `8.0.2` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [click](https://github.com/pallets/click) | `8.2.1` | `8.3.1` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.21.2` | `0.22.4` |\n| [pyenchant](https://github.com/pyenchant/pyenchant) | `3.2.2` | `3.3.0` |\n| [psycopg2-binary](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [pg8000](https://github.com/tlocke/pg8000) | `1.31.2` | `1.31.5` |\n| [scramp](https://github.com/tlocke/scramp) | `1.4.5` | `1.4.8` |\n| [wheel](https://github.com/pypa/wheel) | `0.45.1` | `0.46.3` |\n| [build](https://github.com/pypa/build) | `1.2.2.post1` | `1.4.0` |\n\nUpdates `attrs` from 25.3.0 to 25.4.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sponsors/hynek/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 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/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `incremental` from 24.7.2 to 24.11.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/twisted/incremental/blob/trunk/NEWS.rst\"\u003eincremental's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eIncremental 24.11.0 (2025-11-27)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental now provides a CLI script, \u003ccode\u003eincremental\u003c/code\u003e, allowing you to run it with \u003ccode\u003epipx run incremental\u003c/code\u003e.\nThe \u003ccode\u003eincremental update\u003c/code\u003e subcommand offers the same functionality as \u003ccode\u003epython -m incremental.update\u003c/code\u003e. (\u003ccode\u003e[#99](https://github.com/twisted/incremental/issues/99) \u0026lt;https://github.com/twisted/incremental/issues/99\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eIncremental now depends on packaging instead of setuptools at runtime (\u003ccode\u003e[#141](https://github.com/twisted/incremental/issues/141) \u0026lt;https://github.com/twisted/incremental/issues/141\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 and 3.14 to the test matrix. (\u003ccode\u003e[#179](https://github.com/twisted/incremental/issues/179) \u0026lt;https://github.com/twisted/incremental/issues/179\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild Incremental itself with Hatchling, working around failures with certain versions of setuptools (\u003ccode\u003e[#122](https://github.com/twisted/incremental/issues/122) \u0026lt;https://github.com/twisted/incremental/issues/122\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental's documentation now highlights its primary features: CalVer and indeterminate versions (NEXT). (\u003ccode\u003e[#2](https://github.com/twisted/incremental/issues/2) \u0026lt;https://github.com/twisted/incremental/issues/2\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental's CLI no longer depends on Click, so you no longer need to install \u003ccode\u003eincremental[scripts]\u003c/code\u003e for it to function.\nThe \u003ccode\u003escripts\u003c/code\u003e extra is deprecated. (\u003ccode\u003e[#99](https://github.com/twisted/incremental/issues/99) \u0026lt;https://github.com/twisted/incremental/issues/99\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.8, which has been end-of-life since October 2024. (\u003ccode\u003e[#179](https://github.com/twisted/incremental/issues/179) \u0026lt;https://github.com/twisted/incremental/issues/179\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#105](https://github.com/twisted/incremental/issues/105) \u0026lt;https://github.com/twisted/incremental/issues/105\u0026gt;\u003c/code\u003e\u003cstrong\u003e, \u003ccode\u003e[#116](https://github.com/twisted/incremental/issues/116) \u0026lt;https://github.com/twisted/incremental/issues/116\u0026gt;\u003c/code\u003e\u003c/strong\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/twisted/incremental/commit/2e15ebbbd5bdddb122179074e7d088dd0f5bf198\"\u003e\u003ccode\u003e2e15ebb\u003c/code\u003e\u003c/a\u003e Release Incremental 25.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/28034621f305d108c8992ef67ca1e04bfff18741\"\u003e\u003ccode\u003e2803462\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/184\"\u003e#184\u003c/a\u003e from twisted/dependabot/github_actions/actions/checko...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/ab9ac5cc1d8abefa00d9526100063f25c3fa770a\"\u003e\u003ccode\u003eab9ac5c\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/fa2a4c70ac385ca5a8d7471313cba668356e3e77\"\u003e\u003ccode\u003efa2a4c7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/183\"\u003e#183\u003c/a\u003e from twisted/dependabot/pip/packaging-9f19c49aaa\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/e9a45a25824b6d37096e5cdad4a78cd2fccd21b6\"\u003e\u003ccode\u003ee9a45a2\u003c/code\u003e\u003c/a\u003e Bump build in the packaging group across 1 directory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/f72107413d4d7af3fad1cc5315ec150fd94f7ede\"\u003e\u003ccode\u003ef721074\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/180\"\u003e#180\u003c/a\u003e from twisted/dependabot/pip/uv-0.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/6678e1cd092f207915f57f2a18f71ed1cda76037\"\u003e\u003ccode\u003e6678e1c\u003c/code\u003e\u003c/a\u003e Bump uv from 0.9.5 to 0.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/b98b8c58c98a67c038dfc1c8c993d2dd1baa8bcf\"\u003e\u003ccode\u003eb98b8c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/179\"\u003e#179\u003c/a\u003e from twisted/new-pythons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/d9ae87ec397cd465b08ac9b85877acbf8ca6a8d4\"\u003e\u003ccode\u003ed9ae87e\u003c/code\u003e\u003c/a\u003e Add newsfragments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/61c2784efe858da52d31609b12cdb831aaabb75f\"\u003e\u003ccode\u003e61c2784\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.8\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/twisted/incremental/compare/incremental-24.7.2...incremental-24.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psutil` from 7.0.0 to 7.2.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.2.2\u003c/h1\u003e\n\u003cp\u003e2026-01-28\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2705_: [Linux]: \u003ccode\u003eProcess.wait()\u003c/code\u003e_ now uses \u003ccode\u003epidfd_open()\u003c/code\u003e + \u003ccode\u003epoll()\u003c/code\u003e for\nwaiting, resulting in no busy loop and faster response times. Requires\nLinux \u0026gt;= 5.3 and Python \u0026gt;= 3.9. Falls back to traditional polling if\nunavailable.\u003c/li\u003e\n\u003cli\u003e2705_: [macOS], [BSD]: \u003ccode\u003eProcess.wait()\u003c/code\u003e_ now uses \u003ccode\u003ekqueue()\u003c/code\u003e for waiting,\nresulting in no busy loop and faster response times.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2701_, [macOS]: fix compilation error on macOS \u0026lt; 10.7.  (patch by Sergey\nFedorov)\u003c/li\u003e\n\u003cli\u003e2707_, [macOS]: fix potential memory leaks in error paths of\n\u003ccode\u003eProcess.memory_full_info()\u003c/code\u003e and \u003ccode\u003eProcess.threads()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e2708_, [macOS]: Process.cmdline()\u003ccode\u003e_ and \u003c/code\u003eProcess.environ()\u003ccode\u003e_ may fail with ``OSError: [Errno 0] Undefined error`` (from ``sysctl(KERN_PROCARGS2)``). They now raise \u003c/code\u003eAccessDenied`_ instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.1\u003c/h1\u003e\n\u003cp\u003e2025-12-29\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2699_, [FreeBSD], [NetBSD]: \u003ccode\u003eheap_info()\u003c/code\u003e_ does not detect small allocations\n(\u0026lt;= 1K). In order to fix that, we now flush internal jemalloc cache before\nfetching the metrics.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.0\u003c/h1\u003e\n\u003cp\u003e2025-12-23\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e1275_: new \u003ccode\u003eheap_info()\u003c/code\u003e_ and \u003ccode\u003eheap_trim()\u003c/code\u003e_ functions, providing direct\naccess to the platform's native C heap allocator (glibc, mimalloc,\nlibmalloc). Useful to create tools to detect memory leaks.\u003c/li\u003e\n\u003cli\u003e2403_, [Linux]: publish wheels for Linux musl.\u003c/li\u003e\n\u003cli\u003e2680_: unit tests are no longer installed / part of the distribution. They\nnow live under \u003ccode\u003etests/\u003c/code\u003e instead of \u003ccode\u003epsutil/tests\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\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/giampaolo/psutil/commit/9eea97dd6f1d16ea33f5144c8925f1ce7a0688e1\"\u003e\u003ccode\u003e9eea97d\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/938ac647418f09e4e610b2c755741316713c5592\"\u003e\u003ccode\u003e938ac64\u003c/code\u003e\u003c/a\u003e Rm sphinxcontrib.googleanalytics; override layout.html\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/9dcbb7e60e650f0ab0cb52154b0a12c70f6a1e4c\"\u003e\u003ccode\u003e9dcbb7e\u003c/code\u003e\u003c/a\u003e Add sphinxcontrib-googleanalytics to requirements.txt\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/76eaf9ae0f2868569c14b46f4165310885a40a15\"\u003e\u003ccode\u003e76eaf9a\u003c/code\u003e\u003c/a\u003e Try to add google analytics to doc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/de1cafa56f54e97ca557993155e76dd98877e136\"\u003e\u003ccode\u003ede1cafa\u003c/code\u003e\u003c/a\u003e Update doc mentioning Process.wait() internal details\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/bb30943b0336a16f28437ec549c15a8ad2830cca\"\u003e\u003ccode\u003ebb30943\u003c/code\u003e\u003c/a\u003e Refact can_use_pidfd_open() and can_use_kqueue()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/a571717d6520d436273c8cb34ca871db4bfa508a\"\u003e\u003ccode\u003ea571717\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2708\"\u003e#2708\u003c/a\u003e, macos / cmdline / environ; raise AD instead of OSError(0) (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/8b98c3effc20dcc4ed08c8f3d33e11ec0f5445b1\"\u003e\u003ccode\u003e8b98c3e\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/700b7e6a4171ae7c775679217205f1d97568ae00\"\u003e\u003ccode\u003e700b7e6\u003c/code\u003e\u003c/a\u003e [macOS] fix potential leaks in error paths (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2707\"\u003e#2707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/7cc7923a1479fb1d32bb25d3e78b465e2695fbf7\"\u003e\u003ccode\u003e7cc7923\u003c/code\u003e\u003c/a\u003e Windows / cmdline(): be more defensive in free()ing in case of error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.0.0...release-7.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typing-extensions` from 4.14.0 to 4.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/typing_extensions/releases\"\u003etyping-extensions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.0\u003c/h2\u003e\n\u003cp\u003eNo user-facing changes since 4.15.0rc1.\u003c/p\u003e\n\u003cp\u003eNew features since 4.14.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.15.0rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.14.1\u003c/h2\u003e\n\u003ch1\u003eRelease 4.14.1 (July 4, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix usage of \u003ccode\u003etyping_extensions.TypedDict\u003c/code\u003e nested inside other types\n(e.g., \u003ccode\u003etyping.Type[typing_extensions.TypedDict]\u003c/code\u003e). This is not allowed by the\ntype system but worked on older versions, so we maintain 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/python/typing_extensions/blob/main/CHANGELOG.md\"\u003etyping-extensions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 4.15.0 (August 25, 2025)\u003c/h1\u003e\n\u003cp\u003eNo user-facing changes since 4.15.0rc1.\u003c/p\u003e\n\u003ch1\u003eRelease 4.15.0rc1 (August 18, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 4.14.1 (July 4, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix usage of \u003ccode\u003etyping_extensions.TypedDict\u003c/code\u003e nested inside other types\n(e.g., \u003ccode\u003etyping.Type[typing_extensions.TypedDict]\u003c/code\u003e). This is not allowed by the\ntype system but worked on older versions, so we maintain 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/python/typing_extensions/commit/9d1637e264b5c1a6b7acee3e907015f89b20c2c9\"\u003e\u003ccode\u003e9d1637e\u003c/code\u003e\u003c/a\u003e Prepare release 4.15.0 (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/4bd67c5be5d9443c7d33c314d02a56ee125eb88d\"\u003e\u003ccode\u003e4bd67c5\u003c/code\u003e\u003c/a\u003e Coverage: exclude some noise (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/656\"\u003e#656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/e589a26da73b075c5276bae40b86db1af0144f84\"\u003e\u003ccode\u003ee589a26\u003c/code\u003e\u003c/a\u003e Coverage: add detailed report to job summary (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/655\"\u003e#655\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/67d37fed1298e050f74d5acc95b2621bd37837ad\"\u003e\u003ccode\u003e67d37fe\u003c/code\u003e\u003c/a\u003e Coverage: Implement fail_under (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/654\"\u003e#654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/e9ae26f5286edee9262727755ecb9ad16e999192\"\u003e\u003ccode\u003ee9ae26f\u003c/code\u003e\u003c/a\u003e Don't delete previous coverage comment (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/653\"\u003e#653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/ac80bb728a3006fc88ef7373b92f0c25cfcc7895\"\u003e\u003ccode\u003eac80bb7\u003c/code\u003e\u003c/a\u003e Add Coverage workflow (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/623\"\u003e#623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/abaaafd98c1cc7e5baf098ec287a3d22cb339670\"\u003e\u003ccode\u003eabaaafd\u003c/code\u003e\u003c/a\u003e Prepare release 4.15.0rc1 (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/650\"\u003e#650\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/98104053ea8d49bcdd247804e5fa9f73136acbd4\"\u003e\u003ccode\u003e9810405\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e@disjoint_base\u003c/code\u003e (PEP 800) (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/634\"\u003e#634\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/7ee9e05fd484d06899ce56e80f5e1aa4c760fc03\"\u003e\u003ccode\u003e7ee9e05\u003c/code\u003e\u003c/a\u003e Backport type_params fix from CPython (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/646\"\u003e#646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/1e8eb9c06ef51b3a1e1f05303a16feca13f5ed98\"\u003e\u003ccode\u003e1e8eb9c\u003c/code\u003e\u003c/a\u003e Do not refer to PEP 705 as being experimental (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/648\"\u003e#648\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/typing_extensions/compare/4.14.0...4.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdown` from 3.8 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/releases\"\u003emarkdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested elements inside inline comments are properly unescaped (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1571\"\u003e#1571\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eMake the docs build successfully with mkdocstrings-python 2.0 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1575\"\u003e#1575\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix infinite loop when multiple bogus or unclosed HTML comments appear in input (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1578\"\u003e#1578\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix another infinite loop when handling bad comments (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1586\"\u003e#1586\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure incomplete markup declaration in raw HTML doesn't crash parser (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1534\"\u003e#1534\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed dropped content in \u003ccode\u003emd_in_html\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1526\"\u003e#1526\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed HTML handling corner case that prevented some content from not being rendered (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1528\"\u003e#1528\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/Python-Markdown/markdown/blob/master/docs/changelog.md\"\u003emarkdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.10.1] - 2026-01-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested elements inside inline comments are properly unescaped (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1571\"\u003e#1571\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eMake the docs build successfully with mkdocstrings-python 2.0 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1575\"\u003e#1575\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix infinite loop when multiple bogus or unclosed HTML comments appear in input (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1578\"\u003e#1578\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix another infinite loop when handling bad comments (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1586\"\u003e#1586\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.10.0] - 2025-11-03\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.9.0] - 2025-09-04\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.2] - 2025-06-19\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.1] - 2025-06-18\u003c/h2\u003e\n\u003ch3\u003eFixed\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/Python-Markdown/markdown/commit/e5fa5b86e8ec380cbc520cfc637d72c779e5c601\"\u003e\u003ccode\u003ee5fa5b8\u003c/code\u003e\u003c/a\u003e Bump version to 3.10.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/f9253495f5d9919f2fdd5e147832b5fc21330f65\"\u003e\u003ccode\u003ef925349\u003c/code\u003e\u003c/a\u003e More HTML fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/9933a0a4699f3dea91f46528a2bf54863f531c08\"\u003e\u003ccode\u003e9933a0a\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Allow reference links with backticks\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/07dfa4eb43f7a2ab3181b4f842a960a03a6c1221\"\u003e\u003ccode\u003e07dfa4e\u003c/code\u003e\u003c/a\u003e Allow reference links with backticks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/fb6b27a6ff90980b5bcb0cd51528a7c9dc3a93ca\"\u003e\u003ccode\u003efb6b27a\u003c/code\u003e\u003c/a\u003e Fix infinite loop when text contains multiple unclosed comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/89112c293f7b399ae8808f3a06306f46601e9684\"\u003e\u003ccode\u003e89112c2\u003c/code\u003e\u003c/a\u003e Make the docs build successfully with mkdocstrings-python 2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/961856ceb30623b929d8b7abdf5ed7074db7184c\"\u003e\u003ccode\u003e961856c\u003c/code\u003e\u003c/a\u003e Update link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/2b49115b1002142afbd84b3002f13c0e98a0f487\"\u003e\u003ccode\u003e2b49115\u003c/code\u003e\u003c/a\u003e Ensure nested elements inside inline comments are properly unescaped.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/22e89c1fc346f72218a10e392a0c3b4731912522\"\u003e\u003ccode\u003e22e89c1\u003c/code\u003e\u003c/a\u003e Bump version to 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/c138aea5139a6aceae05bb957e866d9ce7577b94\"\u003e\u003ccode\u003ec138aea\u003c/code\u003e\u003c/a\u003e + PY314 - PY39\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Python-Markdown/markdown/compare/3.8...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.9.1 to 7.13.3\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.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\u003cp\u003e.. _issue 2082: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2082\"\u003ecoveragepy/coveragepy#2082\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-2:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.2 — 2026-01-25\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: when Python is installed via symlinks, for example with Homebrew, the\nstandard library files could be incorrectly included in coverage reports.\nThis is now fixed, closing \u003ccode\u003eissue 2115\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: if a data file is created with no read permissions, the combine step\nwould fail completely. Now a warning is issued and the file is skipped.\nCloses \u003ccode\u003eissue 2117\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2115: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2115\"\u003ecoveragepy/coveragepy#2115\u003c/a\u003e\n.. _issue 2117: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2117\"\u003ecoveragepy/coveragepy#2117\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-1:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.1 — 2025-12-28\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded: the JSON report now includes a \u003ccode\u003e\u0026quot;start_line\u0026quot;\u003c/code\u003e key for function and\nclass regions, indicating the first line of the region in the source. Closes\n\u003ccode\u003eissue 2110\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded: The \u003ccode\u003edebug data\u003c/code\u003e command now takes file names as arguments on the\ncommand line, so you can inspect specific data files without needing to set\nthe \u003ccode\u003eCOVERAGE_FILE\u003c/code\u003e environment variable.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the JSON report used to report module docstrings as executed lines,\nwhich no other report did, as described in \u003ccode\u003eissue 2105\u003c/code\u003e_. This is now fixed,\nthanks to Jianrong Zhao.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: coverage.py uses a more disciplined approach to detecting where\nthird-party code is installed, and avoids measuring it. This shouldn't change\nany behavior. If you find that it does, please get in touch.\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/coveragepy/coveragepy/commit/6bf962f476b2f4cf344e9aa981dbbc8138cdfb69\"\u003e\u003ccode\u003e6bf962f\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/9f2e54c31bfe3af00d1d276a4e76014b896c13ad\"\u003e\u003ccode\u003e9f2e54c\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/6208c42e7ee6047d6d21b3c5c515f56fc10e7b2d\"\u003e\u003ccode\u003e6208c42\u003c/code\u003e\u003c/a\u003e fix: find third-party packages in more locations. \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2082\"\u003e#2082\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/edb50169c00ad9a90b2104a85adc57965dc23c2e\"\u003e\u003ccode\u003eedb5016\u003c/code\u003e\u003c/a\u003e refactor: make dataclass imports uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/b05826a0f6ab909fe136468647a45e74926cd570\"\u003e\u003ccode\u003eb05826a\u003c/code\u003e\u003c/a\u003e chore: bump actions/setup-python in the action-dependencies group (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2126\"\u003e#2126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/b519e17acf1c311c0868e7e571da47b43dd1f6f7\"\u003e\u003ccode\u003eb519e17\u003c/code\u003e\u003c/a\u003e refactor: no need for ox_profile connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/775f1cb19d232e6849b5bb662431390cc7d9a0b5\"\u003e\u003ccode\u003e775f1cb\u003c/code\u003e\u003c/a\u003e build: remove pudb, I can install it if I need it\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0ccb1fe603352cfdc2c4cfbe062a84015d8f3454\"\u003e\u003ccode\u003e0ccb1fe\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e9e2a0e8e740915c525256e84e2a628849374c5c\"\u003e\u003ccode\u003ee9e2a0e\u003c/code\u003e\u003c/a\u003e chore: bump actions/checkout in the action-dependencies group (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2122\"\u003e#2122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/77e1a04e898ed8851eeb17f761b4fecacf3de01c\"\u003e\u003ccode\u003e77e1a04\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.9.1...7.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hvac` from 2.3.0 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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.16.0 to 1.19.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.19.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix noncommutative joins with bounded TypeVars (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20345\"\u003e20345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRespect output format for cached runs by serializing raw errors in cache metas (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20372\"\u003e20372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003etypes.NoneType\u003c/code\u003e in match cases (A5rocks, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20383\"\u003e20383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix mypyc generator regression with empty tuple (BobTheBuidler, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20371\"\u003e20371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash involving Unpack-ed TypeVarTuple (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20323\"\u003e20323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash on star import of redefinition (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20333\"\u003e20333\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash on typevar with forward ref used in other module (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20334\"\u003e20334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFail with an explicit error on PyPy (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20389\"\u003e20389\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\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eDavid Foster\u003c/li\u003e\n\u003cli\u003eFrank Dana\u003c/li\u003e\n\u003cli\u003eGuo Ci\u003c/li\u003e\n\u003cli\u003eiap\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilton-Balfe\u003c/li\u003e\n\u003cli\u003ejhance\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eKarelKenens\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael Carlstrom\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\u003c/li\u003e\n\u003cli\u003eRandolf Scholz\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eSigve Sebastian Farstad\u003c/li\u003e\n\u003cli\u003esobolevn\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003eStephen Morton\u003c/li\u003e\n\u003cli\u003eTheodore Ando\u003c/li\u003e\n\u003cli\u003eThiago J. Barbalho\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.18\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.18.1 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\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/412c19a6bde31e7afa7f41afdf8356664689ae80\"\u003e\u003ccode\u003e412c19a\u003c/code\u003e\u003c/a\u003e Bump version to 1.19.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/20aea0a6ca0710f5427239bdd2fd8e8bf1caf634\"\u003e\u003ccode\u003e20aea0a\u003c/code\u003e\u003c/a\u003e Update changelog for 1.19.1 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20414\"\u003e#20414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2b23b507524bf1bd7513eea6f2a16fb91e072cb6\"\u003e\u003ccode\u003e2b23b50\u003c/code\u003e\u003c/a\u003e Serialize raw errors in cache metas (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20372\"\u003e#20372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/f60f90fb8872bf722e32aefd548daaf6d8560e05\"\u003e\u003ccode\u003ef60f90f\u003c/code\u003e\u003c/a\u003e Fail on PyPy in main instead of setup.py (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20389\"\u003e#20389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/58d485b4ea4776e0b9d4045b306cb0818ecc2aa6\"\u003e\u003ccode\u003e58d485b\u003c/code\u003e\u003c/a\u003e Fail with an explicit error on PyPy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20384\"\u003e#20384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a4b31a26788b70c4a2a19adbafa2bbda43dc2e8b\"\u003e\u003ccode\u003ea4b31a2\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003etypes.NoneType\u003c/code\u003e in match cases (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20383\"\u003e#20383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/8a6eff478416cd3ed3931a6ed77ce61c88ab69e9\"\u003e\u003ccode\u003e8a6eff4\u003c/code\u003e\u003c/a\u003e [mypyc] fix generator regression with empty tuple (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20371\"\u003e#20371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/70eceea682c041c0d8e8462dffef9c7bb252e014\"\u003e\u003ccode\u003e70eceea\u003c/code\u003e\u003c/a\u003e Fix noncommutative joins with bounded TypeVars (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20345\"\u003e#20345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3890fc49bf7cc02db04b1e63eb2540aaacdeecc0\"\u003e\u003ccode\u003e3890fc4\u003c/code\u003e\u003c/a\u003e Fix crash involving Unpack-ed TypeVarTuple (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20323\"\u003e#20323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c93d917a86993e06dcc88e508f28f4f5199ce1c8\"\u003e\u003ccode\u003ec93d917\u003c/code\u003e\u003c/a\u003e Fix crash on star import of redefinition (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20333\"\u003e#20333\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy-zope` from 1.0.12 to 1.0.14\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Shoobx/mypy-zope/blob/master/CHANGELOG.md\"\u003emypy-zope's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.14 (2025-12-01)\u003c/h2\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eSupport mypy-1.19\u003c/li\u003e\n\u003cli\u003eSupport mypy-1.18\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.13 (2025-07-17)\u003c/h2\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for python-3.8 (follow mypy).\u003c/li\u003e\n\u003cli\u003eSupport mypy-1.17\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/Shoobx/mypy-zope/commit/38d22f3f4f6fc1b85c9a0d3b64577749f682a6d2\"\u003e\u003ccode\u003e38d22f3\u003c/code\u003e\u003c/a\u003e Preparing release 1.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/76762ec861b1b3cddc471f1e8949902f3f3264be\"\u003e\u003ccode\u003e76762ec\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/4971d98ab80db3362bd5864a92d385e8c5a43aec\"\u003e\u003ccode\u003e4971d98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Shoobx/mypy-zope/issues/134\"\u003e#134\u003c/a\u003e from Shoobx/dependabot/pip/mypy-gte-1.0.0-and-lt-1.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/47af89d2c709f9e478ddbd5590994eba0829fb34\"\u003e\u003ccode\u003e47af89d\u003c/code\u003e\u003c/a\u003e Update mypy requirement from \u0026lt;1.19.0,\u0026gt;=1.0.0 to \u0026gt;=1.0.0,\u0026lt;1.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/0c596ff804a1ece6a8d33c0abf1587a766e047c8\"\u003e\u003ccode\u003e0c596ff\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/dcaa27841defa865c474f585e8bb799a8242399f\"\u003e\u003ccode\u003edcaa278\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Shoobx/mypy-zope/issues/132\"\u003e#132\u003c/a\u003e from Shoobx/dependabot/pip/mypy-gte-1.0.0-and-lt-1.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/8f7b6778df6e3dde48c082ec07182e50b9938c76\"\u003e\u003ccode\u003e8f7b677\u003c/code\u003e\u003c/a\u003e Update mypy requirement from \u0026lt;1.18.0,\u0026gt;=1.0.0 to \u0026gt;=1.0.0,\u0026lt;1.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/91b275b364cc90403b2a160695f32ca27bc06bb9\"\u003e\u003ccode\u003e91b275b\u003c/code\u003e\u003c/a\u003e Back to development: 1.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/8a3165b79643927ae8b03902baaf1651a2f5ca9c\"\u003e\u003ccode\u003e8a3165b\u003c/code\u003e\u003c/a\u003e Preparing release 1.0.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/421b21ff753291f3b62b4b3deef9bc4cb91b199e\"\u003e\u003ccode\u003e421b21f\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Shoobx/mypy-zope/compare/1.0.12...1.0.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `alembic` from 1.18.1 to 1.18.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sqlalchemy/alembic/releases\"\u003ealembic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.18.3\u003c/h1\u003e\n\u003cp\u003eReleased: January 29, 2026\u003c/p\u003e\n\u003ch2\u003ebug\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[bug] [autogenerate]\u003c/strong\u003e Fixed regression in version 1.18.0 due to \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e where autogenerate\nwould raise \u003ccode\u003eNoReferencedTableError\u003c/code\u003e when a foreign key constraint\nreferenced a table that was not part of the initial table load, including\ntables filtered out by the\n\u003ccode\u003eEnvironmentContext.configure.include_name\u003c/code\u003e callable or tables\nin remote schemas that were not included in the initial reflection run.\u003c/p\u003e\n\u003cp\u003eThe change in \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e was a performance optimization that eliminated\nadditional reflection queries for tables that were only referenced by\nforeign keys but not explicitly included in the main reflection run.\nHowever, this optimization inadvertently removed the creation of\n\u003ccode\u003eTable\u003c/code\u003e objects for these referenced tables, causing autogenerate\nto fail when processing foreign key constraints that pointed to them.\u003c/p\u003e\n\u003cp\u003eThe fix creates placeholder \u003ccode\u003eTable\u003c/code\u003e objects for foreign key targets\nthat are not reflected, allowing the autogenerate comparison to proceed\nwithout error while maintaining the performance improvement from\n\u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e. When multiple foreign keys reference different columns in\nthe same filtered table, the placeholder table accumulates all necessary\ncolumns. These placeholder tables may be visible when using the\n\u003ccode\u003eEnvironmentContext.configure.include_object\u003c/code\u003e callable to\ninspect \u003ccode\u003eForeignKeyConstraint\u003c/code\u003e objects; they will have the name,\nschema and basic column information for the relevant columns present.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1787\"\u003e#1787\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[bug] [general]\u003c/strong\u003e Fixed regression caused by \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1669\"\u003e#1669\u003c/a\u003e which requires SQLAlchemy objects\nto support generic type subscripting; for the older SQLAlchemy 1.4 series,\nthis requires version 1.4.23.  Changed the minimum requirements to require\nversion 1.4.23 rather than 1.4.0.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1788\"\u003e#1788\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.18.2\u003c/h1\u003e\n\u003cp\u003eReleased: January 28, 2026\u003c/p\u003e\n\u003ch2\u003eusecase\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[usecase] [operations]\u003c/strong\u003e The \u003ccode\u003eprimary_key\u003c/code\u003e parameter on \u003ccode\u003eColumn\u003c/code\u003e is now honored when\n\u003ccode\u003eOperations.add_column()\u003c/code\u003e is used, and will emit the \u0026quot;PRIMARY KEY\u0026quot;\nkeyword inline within the ADD COLUMN directive.  This is strictly a syntax\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\u003eSee full diff in \u003ca href=\"https://github.com/sqlalchemy/alembic/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.36 to 1.42.41\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/60637f8fc25c9411abb7f430eb3c2466437d1704\"\u003e\u003ccode\u003e60637f8\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.41'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/662d4a34c5c6dea278de160e694e1e8055c590bf\"\u003e\u003ccode\u003e662d4a3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.41\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/5dcc61b903fef7201710dab6ac14a8d3b0dbbc3d\"\u003e\u003ccode\u003e5dcc61b\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/15a78179d4ba9127aa5903edd9fe6265a45dc25f\"\u003e\u003ccode\u003e15a7817\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6bea7925951176592700c630baaa3a35eaec1d6b\"\u003e\u003ccode\u003e6bea792\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3f92d07e04146184a1769c89616ccb8d304e9fd3\"\u003e\u003ccode\u003e3f92d07\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.40\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0069675fdee79041187d17d3d96cbe47daa992c9\"\u003e\u003ccode\u003e0069675\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/66d036066f907ffebf4f49c87cde3009ec270b87\"\u003e\u003ccode\u003e66d0360\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.0 to 4.32.1 (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4715\"\u003e#4715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/fd93dbb656cec791e048992bc24d78850e672c59\"\u003e\u003ccode\u003efd93dbb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/18836475f987e84d196a6ddd485ae1a3d876dd32\"\u003e\u003ccode\u003e1883647\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.36...1.42.41\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.36 to 1.42.41\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/104e8ef284991c77c516d1da7f9cf9917d6e63f2\"\u003e\u003ccode\u003e104e8ef\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.41'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7436ba994fe0e5cc69f302be8e5efd4c8c9859ce\"\u003e\u003ccode\u003e7436ba9\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.41\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/1a0813ab227c0a0275b3b332b051a737ecec68fc\"\u003e\u003ccode\u003e1a0813a\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/12d57f623893fafc71889af397fd3df30b321318\"\u003e\u003ccode\u003e12d57f6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a7e48591d05e948cb7f126d7cc5a6a7ce9313859\"\u003e\u003ccode\u003ea7e4859\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fa102f5401b0b251d5ba0431a69d1c18d2165c21\"\u003e\u003ccode\u003efa102f5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.40\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/84898c56e81e251bd97373233550cdf3c83593b1\"\u003e\u003ccode\u003e84898c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/14b6a17a426ad0f8e0abe2540dfd43a736b1c2eb\"\u003e\u003ccode\u003e14b6a17\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/bb59587528ecc5193b8af2ef6ead9503364bbe7a\"\u003e\u003ccode\u003ebb59587\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.0 to 4.32.0 (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3625\"\u003e#3625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/26a688fcf87081fb56bd950f8feaef8d3a1abd06\"\u003e\u003ccode\u003e26a688f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.36...1.42.41\"\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.2 to 3.4.4\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.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\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\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.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\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\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/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dill` from 0.4.0 to 0.4.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/a9d4d39c411296fb3608c4ffd142134559942d21\"\u003e\u003ccode\u003ea9d4d39\u003c/code\u003e\u003c/a\u003e tag: 0.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/54370bde90434f98100c646d4b78575b3385840f\"\u003e\u003ccode\u003e54370bd\u003c/code\u003e\u003c/a\u003e cleanup outdated docs (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/bae7c217fea05667e1e20ea29239878f9bab6930\"\u003e\u003ccode\u003ebae7c21\u003c/code\u003e\u003c/a\u003e fix pypy311 registered, update travis ci (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/7daa95d0a5caaeeb0bf8705ec339215ff90c1425\"\u003e\u003ccode\u003e7daa95d\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.6.0 to 2.6.3 in /docs (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/739\"\u003e#739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/5fbd3a77aa53205ea0b19dc343e69f5d8701e09e\"\u003e\u003ccode\u003e5fbd3a7\u003c/code\u003e\u003c/a\u003e sync with rtfd 15.10.0 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/fdb4b720e34d539589180ccbb68ac6cd04d8c927\"\u003e\u003ccode\u003efdb4b72\u003c/code\u003e\u003c/a\u003e update copyright for 2026, urllib3 to 2.6.0 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/738\"\u003e#738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/e8c4221ffe177c48e50a569c8a72e669f7bd1ac1\"\u003e\u003ccode\u003ee8c4221\u003c/code\u003e\u003c/a\u003e avoid numpy segfault for 3.15.0a3 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/737\"\u003e#737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/d948ecd748772f2812361982ec1496da0cd47b53\"\u003e\u003ccode\u003ed948ecd\u003c/code\u003e\u003c/a\u003e ensure valid class qualname in getsource (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/733\"\u003e#733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/a843f9013fab9a2cccedf1cec32e39aad1a81cad\"\u003e\u003ccode\u003ea843f90\u003c/code\u003e\u003c/a\u003e sync with rtd 15.4.1 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/731\"\u003e#731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/08f613da299c61b7a3c6afc95c0d7a71ab63857b\"\u003e\u003ccode\u003e08f613d\u003c/code\u003e\u003c/a\u003e dict and weakref attribute are singletons in 3.15 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uqfoundation/dill/compare/0.4.0...0.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `evalidate` from 2.0.5 to 2.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaroslaff/evalidate/releases\"\u003eevalidate's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.1.3 Is/IsNot\u003c/h2\u003e\n\u003cp\u003e2.1.3 \u003ccode\u003eIs\u003c/code\u003e and \u003ccode\u003eIsNot\u003c/code\u003e nodes are whitelisted by default\u003c/p\u003e\n\u003ch2\u003e2.1.1\u003c/h2\u003e\n\u003cp\u003eExpr.eval() accepts both local and global ctx (since 2.1.0)\u003c/p\u003e\n\u003cp\u003eTwo CLI utilities:\njg (json grep, fast small alternative to jq) added\ngenfakeproducts - simple utility to generate JSON lists for tests\u003c/p\u003e\n\u003cp\u003ein 2.1.1 - removed wrong dependency on \u0026quot;requests\u0026quot;\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/yaroslaff/evalidate/commit/411745abd02910f646f0fc215d235ae48fd027fc\"\u003e\u003ccode\u003e411745a\u003c/code\u003e\u003c/a\u003e Is/IsNot whitelisted\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/bc2606c7be297422be3a136d79b68cb2679cc4d1\"\u003e\u003ccode\u003ebc2606c\u003c/code\u003e\u003c/a\u003e [generate] extra\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/77bf1af5385a1dd436f0fc6ea6589fda1a5a2ad4\"\u003e\u003ccode\u003e77bf1af\u003c/code\u003e\u003c/a\u003e removed wrong requests dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/f50a2954124cffa87f69c61e738d75b3fa3a0cec\"\u003e\u003ccode\u003ef50a295\u003c/code\u003e\u003c/a\u003e dependency added: requests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/a264b9d23cf1d17813bb5cc0c61a35535eff3206\"\u003e\u003ccode\u003ea264b9d\u003c/code\u003e\u003c/a\u003e README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/52c0fe8cf097d63c5c288d3e1067ce047923e876\"\u003e\u003ccode\u003e52c0fe8\u003c/code\u003e\u003c/a\u003e Expr accepts ctx_globals/ctx_locals. jg and genfakeproducts CLI tools.\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaroslaff/evalidate/compare/v2.0.5...v2.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `greenlet` from 3.2.3 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-greenlet/greenlet/blob/master/CHANGES.rst\"\u003egreenlet's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.3.1 (2026-01-23)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePublish Windows ARM binary wheels, where available.\u003c/li\u003e\n\u003cli\u003eFix compilation for 3.14t on Windows.\u003c/li\u003e\n\u003cli\u003ePublish Windows 3.14t binary wheels for Intel...\n\n_Description has been truncated_","html_url":"https://github.com/tdesveaux/buildbot/pull/69","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tdesveaux%2Fbuildbot/issues/69","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/69/packages"},{"uuid":"3829925712","node_id":"PR_kwDOHfpFZM6-BM2H","number":235,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-19T18:35:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-19T14:15:23.000Z","updated_at":"2026-01-19T18:35:39.000Z","time_to_close":15614,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/235","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/235","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/235/packages"},{"uuid":"3767248457","node_id":"PR_kwDOHfpFZM660TUy","number":232,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-29T18:34:47.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-29T12:06:17.000Z","updated_at":"2025-12-29T18:34:49.000Z","time_to_close":23310,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/232","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/232","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/232/packages"},{"uuid":"3681319045","node_id":"PR_kwDOHfpFZM62XRp9","number":228,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-01T20:44:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-01T14:39:10.000Z","updated_at":"2025-12-01T20:44:40.000Z","time_to_close":21928,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/228","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/228","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/228/packages"},{"uuid":"3677080084","node_id":"PR_kwDOPrR8PM62JNXM","number":738,"state":"open","title":"chore(deps)(deps): bump hvac from 2.1.0 to 2.4.0","user":"dependabot[bot]","labels":["backend","dependencies","python","priority: high","automated"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":13,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-29T20:40:14.000Z","updated_at":"2025-11-29T20:42:46.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps)","packages":[{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.1.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.1.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/738","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/738","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/738/packages"},{"uuid":"3670853702","node_id":"PR_kwDOHGh5u8610wID","number":915,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 34 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T11:09:04.000Z","author_association":null,"state_reason":null,"created_at":"2025-11-27T10:46:16.000Z","updated_at":"2026-01-13T11:09:06.000Z","time_to_close":4062168,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":34,"packages":[{"name":"rich-click","old_version":"1.8.8","new_version":"1.9.4","repository_url":"https://github.com/ewels/rich-click"},{"name":"securesystemslib","old_version":"1.3.0","new_version":"1.3.1","repository_url":"https://github.com/secure-systems-lab/securesystemslib"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"dynaconf","old_version":"3.2.10","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"sqlalchemy","old_version":"2.0.40","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"beaupy","old_version":"3.10.1","new_version":"3.10.2","repository_url":"https://github.com/petereon/beaupy"},{"name":"sigstore","old_version":"3.6.2","new_version":"4.1.0","repository_url":"https://github.com/sigstore/sigstore-python"},{"name":"boto3","old_version":"1.38.8","new_version":"1.41.5","repository_url":"https://github.com/boto/boto3"},{"name":"google-cloud-kms","old_version":"3.4.1","new_version":"3.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"azure-keyvault-keys","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"prompt-toolkit","old_version":"3.0.51","new_version":"3.0.52","repository_url":"https://github.com/prompt-toolkit/python-prompt-toolkit"},{"name":"setuptools","old_version":"80.3.1","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"pykcs11","old_version":"1.5.17","new_version":"1.5.18","repository_url":"https://github.com/LudovicRousseau/PyKCS11"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"black","old_version":"25.1.0","new_version":"25.11.0","repository_url":"https://github.com/psf/black"},{"name":"flake8","old_version":"7.2.0","new_version":"7.3.0","repository_url":"https://github.com/pycqa/flake8"},{"name":"tox","old_version":"4.25.0","new_version":"4.32.0","repository_url":"https://github.com/tox-dev/tox"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"pip","old_version":"25.1.1","new_version":"25.3","repository_url":"https://github.com/pypa/pip"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"hatchling","old_version":"1.27.0","new_version":"1.28.0","repository_url":"https://github.com/pypa/hatch"},{"name":"build","old_version":"1.2.2.post1","new_version":"1.3.0","repository_url":"https://github.com/pypa/build"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"bandit","old_version":"1.8.3","new_version":"1.9.2","repository_url":"https://github.com/PyCQA/bandit"},{"name":"types-requests","old_version":"2.32.0.20250328","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 31 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [rich-click](https://github.com/ewels/rich-click) | `1.8.8` | `1.9.4` |\n| [securesystemslib](https://github.com/secure-systems-lab/securesystemslib) | `1.3.0` | `1.3.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.10` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.40` | `2.0.44` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [beaupy](https://github.com/petereon/beaupy) | `3.10.1` | `3.10.2` |\n| [sigstore](https://github.com/sigstore/sigstore-python) | `3.6.2` | `4.1.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.8` | `1.41.5` |\n| [google-cloud-kms](https://github.com/googleapis/google-cloud-python) | `3.4.1` | `3.7.0` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [azure-keyvault-keys](https://github.com/Azure/azure-sdk-for-python) | `4.10.0` | `4.11.0` |\n| [prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit) | `3.0.51` | `3.0.52` |\n| [setuptools](https://github.com/pypa/setuptools) | `80.3.1` | `80.9.0` |\n| [pykcs11](https://github.com/LudovicRousseau/PyKCS11) | `1.5.17` | `1.5.18` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.1` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.11.0` |\n| [flake8](https://github.com/pycqa/flake8) | `7.2.0` | `7.3.0` |\n| [tox](https://github.com/tox-dev/tox) | `4.25.0` | `4.32.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `7.0.0` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [pip](https://github.com/pypa/pip) | `25.1.1` | `25.3` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [hatchling](https://github.com/pypa/hatch) | `1.27.0` | `1.28.0` |\n| [build](https://github.com/pypa/build) | `1.2.2.post1` | `1.3.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.8.3` | `1.9.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250328` | `2.32.4.20250913` |\n\n\nUpdates `rich-click` from 1.8.8 to 1.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ewels/rich-click/releases\"\u003erich-click's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.9.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Typer 0.20 support\u003c/li\u003e\n\u003cli\u003eFix lack of support for \u003ccode\u003eflag_value=...\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.3.dev0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy Windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.2.dev0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug where running the \u003ccode\u003erich-click\u003c/code\u003e CLI on a \u003ccode\u003e@rich_click.argument()\u003c/code\u003e sometimes caused arguments show up in the option panel when it shouldn't.\u003c/li\u003e\n\u003cli\u003eSlightly reduced horizontal padding of the \u003ccode\u003emodern\u003c/code\u003e theme format.\u003c/li\u003e\n\u003cli\u003eFixed Click 8.3 compatibility with rendering defaults in help text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.0\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 deprecates support for a lot of old versions of things:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython 3.7 support is removed.\u003c/strong\u003e The minimum supported Python version is 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eClick 7 support is removed.\u003c/strong\u003e The minimum supported Click version is 8.0.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRich 10 and 11 support is removed.\u003c/strong\u003e The minimum supported Rich version is 12.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 introduces a minor breaking change:\nThe \u003ccode\u003eDEFAULT_STRING\u003c/code\u003e, \u003ccode\u003eENVVAR_STRING\u003c/code\u003e, \u003ccode\u003eREQUIRED_STRING\u003c/code\u003e, and \u003ccode\u003eDEPRECATED_STRING\u003c/code\u003e config options are now rendered with \u003ccode\u003eText.from_markup\u003c/code\u003e.\nSo for example, \u003ccode\u003eREQUIRED_STRING = \u0026quot;[required]\u0026quot;\u003c/code\u003e would be rendered as Rich markup.\nYou must now escape the rich markup: \u003ccode\u003eREQUIRED_STRING = \u0026quot;\\\\[required]\u0026quot;\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003eBig changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eThemes!\u003c/strong\u003e Check them out with \u003ccode\u003erich-click --themes\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTyper support:\u003c/strong\u003e \u003ccode\u003erich-click typer_app --help\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRichPanels\u003c/strong\u003e API introduced. This replaces the \u0026quot;groups\u0026quot; feature going forward (although groups will continue to be supported).\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@click.option_panel()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@click.command_panel()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIDE tab completion support for decorators\u003c/strong\u003e. Now you should no longer need to guess what goes in \u003ccode\u003e@click.option()\u003c/code\u003e or \u003ccode\u003e@click.command(context_settings=...)\u003c/code\u003e etc.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHelp for arguments:\u003c/strong\u003e \u003ccode\u003ehelp=\u003c/code\u003e is now a valid kwarg for \u003ccode\u003e@click.argument()\u003c/code\u003e decorator. See docs for more information.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSmall changes:\u003c/strong\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ewels/rich-click/blob/main/CHANGELOG.md\"\u003erich-click's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.9.4 (2025-10-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Typer 0.20 support\u003c/li\u003e\n\u003cli\u003eFix lack of support for \u003ccode\u003eflag_value=...\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.3 (2025-10-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.2 (2025-10-04)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.1 (2025-09-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug where running the \u003ccode\u003erich-click\u003c/code\u003e CLI on a \u003ccode\u003e@rich_click.argument()\u003c/code\u003e sometimes caused arguments show up in the option panel when it shouldn't.\u003c/li\u003e\n\u003cli\u003eSlightly reduced horizontal padding of the \u003ccode\u003emodern\u003c/code\u003e theme format.\u003c/li\u003e\n\u003cli\u003eFixed Click 8.3 compatibility with rendering defaults in help text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.0 (2025-09-16)\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 deprecates support for a lot of old versions of things:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython 3.7 support is removed.\u003c/strong\u003e The minimum supported Python version is 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eClick 7 support is removed.\u003c/strong\u003e The minimum supported Click version is 8.0.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRich 10 and 11 support is removed.\u003c/strong\u003e The minimum supported Rich version is 12.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 introduces a minor breaking change:\nThe \u003ccode\u003eDEFAULT_STRING\u003c/code\u003e, \u003ccode\u003eENVVAR_STRING\u003c/code\u003e, \u003ccode\u003eREQUIRED_STRING\u003c/code\u003e, and \u003ccode\u003eDEPRECATED_STRING\u003c/code\u003e config options are now rendered with \u003ccode\u003eText.from_markup\u003c/code\u003e.\nSo for example, \u003ccode\u003eREQUIRED_STRING = \u0026quot;[required]\u0026quot;\u003c/code\u003e would be rendered as Rich markup.\nYou must now escape the rich markup: \u003ccode\u003eREQUIRED_STRING = \u0026quot;\\\\[required]\u0026quot;\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003eBig changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eThemes!\u003c/strong\u003e Check them out with \u003ccode\u003erich-click --themes\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTyper support:\u003c/strong\u003e \u003ccode\u003erich-click typer_app --help\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRichPanels\u003c/strong\u003e API introduced. This replaces the \u0026quot;groups\u0026quot; feature going forward (although groups will continue to be supported).\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@click.option_panel()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@click.command_panel()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIDE tab completion support for decorators\u003c/strong\u003e. Now you should no longer need to guess what goes in \u003ccode\u003e@click.option()\u003c/code\u003e or \u003ccode\u003e@click.command(context_settings=...)\u003c/code\u003e etc.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHelp for arguments:\u003c/strong\u003e \u003ccode\u003ehelp=\u003c/code\u003e is now a valid kwarg for \u003ccode\u003e@click.argument()\u003c/code\u003e decorator. See docs for more information.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSmall changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;Deprecated\u0026quot; text properly handled and stylized in all places.\u003c/li\u003e\n\u003cli\u003eCommand aliases: \u003ccode\u003e@cli.command(aliases=[\u0026quot;foo\u0026quot;])\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/ewels/rich-click/commit/7577bb99779c3789f252bc59617daaefdd81cf75\"\u003e\u003ccode\u003e7577bb9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/309\"\u003e#309\u003c/a\u003e from dwreeves/1.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/69152920143a12f4f9c47ccf9056a164048b7935\"\u003e\u003ccode\u003e6915292\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/d1d294c8868d5b363e7ae96608722cb50223f3ec\"\u003e\u003ccode\u003ed1d294c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/308\"\u003e#308\u003c/a\u003e from dwreeves/fix-flag-value-issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/2bcbd9f7c716079437c3f6024ad089335a184889\"\u003e\u003ccode\u003e2bcbd9f\u003c/code\u003e\u003c/a\u003e update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/fdbe0267dd492cfbc07817b0f2de5090c2e65b1a\"\u003e\u003ccode\u003efdbe026\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/306\"\u003e#306\u003c/a\u003e from omad/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/f55d3b8cb01feaaee720498bcea3581c859867cb\"\u003e\u003ccode\u003ef55d3b8\u003c/code\u003e\u003c/a\u003e Merge branch 'patch-1' of github.com-dwreeves:omad/rich-click into patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/515a091913fbe70a0172143ce7feed253e3763db\"\u003e\u003ccode\u003e515a091\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/307\"\u003e#307\u003c/a\u003e from dwreeves/typer-0.20-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/49dff4b13a1357307386edc73c540ecbda1c4854\"\u003e\u003ccode\u003e49dff4b\u003c/code\u003e\u003c/a\u003e Fix Typer 0.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/78793440af87f4e9b9204bbff90bfa2bf6fedbc2\"\u003e\u003ccode\u003e7879344\u003c/code\u003e\u003c/a\u003e Fix example links for documentation site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/0ea0e0a13b199cc1cf28ece1338bf0838772727b\"\u003e\u003ccode\u003e0ea0e0a\u003c/code\u003e\u003c/a\u003e Bump to 1.9.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ewels/rich-click/compare/v1.8.8...v1.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `securesystemslib` from 1.3.0 to 1.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/releases\"\u003esecuresystemslib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.3.1\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/blob/v1.3.1/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\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/secure-systems-lab/securesystemslib/blob/main/CHANGELOG.md\"\u003esecuresystemslib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esecuresystemslib v1.3.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAWSSigner: Don't send payload to AWS for signing, send hash only (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1026\"\u003e#1026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSet Development status classifier to \u0026quot;production/stable\u0026quot; in Python\npackaging (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1030\"\u003e#1030\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternals\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMinor infrastructure changes (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1005\"\u003e#1005\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1013\"\u003e#1013\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/secure-systems-lab/securesystemslib/commit/6f774190b90f0aa9d5d7e077680adbaa29c5cd6c\"\u003e\u003ccode\u003e6f77419\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1030\"\u003e#1030\u003c/a\u003e from jku/release-prep-1.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/b71cc5271a9a7b6898c79c1a12393d90996d5388\"\u003e\u003ccode\u003eb71cc52\u003c/code\u003e\u003c/a\u003e Prepare release 1.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/f6835096a845acf25dc3675105937be2565b9e66\"\u003e\u003ccode\u003ef683509\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1026\"\u003e#1026\u003c/a\u003e from ArkadiuszNitkaSWI/fix-aws-signer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/97527198c7bf5b75ef9fb8996412df5453995080\"\u003e\u003ccode\u003e9752719\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1027\"\u003e#1027\u003c/a\u003e from secure-systems-lab/dependabot/pip/test-and-lint...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/4226b762bf3333b5947af9cf29ed751afbfd69b9\"\u003e\u003ccode\u003e4226b76\u003c/code\u003e\u003c/a\u003e build(deps): bump the test-and-lint-dependencies group with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/6394e3e467c091a06ee95dad674dec7e991758c8\"\u003e\u003ccode\u003e6394e3e\u003c/code\u003e\u003c/a\u003e Review changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/dee9a831390c9a69c0e66f7c34779e9eea6dcc6d\"\u003e\u003ccode\u003edee9a83\u003c/code\u003e\u003c/a\u003e linter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/07b0fc780d9d1f4c0843ce3e2096e1216814bd06\"\u003e\u003ccode\u003e07b0fc7\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/e8158a4eb131760714290b9839e3e40f9cd4229c\"\u003e\u003ccode\u003ee8158a4\u003c/code\u003e\u003c/a\u003e Fix AWS signer, allow messages bigger than 4kB\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/e23f855ddecb97d4baddffc068e9591451b9aa72\"\u003e\u003ccode\u003ee23f855\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1023\"\u003e#1023\u003c/a\u003e from secure-systems-lab/dependabot/pip/dependencies-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/compare/v1.3.0...v1.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.1.8 to 8.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/releases\"\u003eclick's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.3.1\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.1 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.1/\"\u003ehttps://pypi.org/project/click/8.3.1/\u003c/a\u003e\nChanges: \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-1\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-1\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/click/milestone/28\"\u003ehttps://github.com/pallets/click/milestone/28\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDon't discard pager arguments by correctly using \u003ccode\u003esubprocess.Popen\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3039\"\u003e#3039\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3055\"\u003e#3055\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003eSentinel.UNSET\u003c/code\u003e default values by \u003ccode\u003eNone\u003c/code\u003e as they're passed through the \u003ccode\u003eContext.invoke()\u003c/code\u003e method. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3066\"\u003e#3066\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3065\"\u003e#3065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3068\"\u003e#3068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of \u003ccode\u003eSentinel.UNSET\u003c/code\u003e happening too early, which caused incorrect behavior for multiple parameters using the same name. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3071\"\u003e#3071\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3079\"\u003e#3079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix rendering when \u003ccode\u003eprompt\u003c/code\u003e and \u003ccode\u003econfirm\u003c/code\u003e parameter \u003ccode\u003eprompt_suffix\u003c/code\u003e is empty. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3019\"\u003e#3019\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3021\"\u003e#3021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen \u003ccode\u003eSentinel.UNSET\u003c/code\u003e is found during parsing, it will skip calls to \u003ccode\u003etype_cast_value\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3069\"\u003e#3069\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3090\"\u003e#3090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when looking up for other parameters through the context inside parameter callbacks. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3136\"\u003e#3136\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3137\"\u003e#3137\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.0 feature release. A feature release may include new features, remove previously deprecated code, add new deprecation, or introduce potentially breaking changes.\u003c/p\u003e\n\u003cp\u003eWe encourage everyone to upgrade. You can read more about our \u003ca href=\"https://palletsprojects.com/versions\"\u003eVersion Support Policy\u003c/a\u003e on our website.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.0/\"\u003ehttps://pypi.org/project/click/8.3.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/27\"\u003ehttps://github.com/pallets/click/milestone/27\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eImproved flag option handling\u003c/strong\u003e: Reworked the relationship between \u003ccode\u003eflag_value\u003c/code\u003e\nand \u003ccode\u003edefault\u003c/code\u003e parameters for better consistency:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter value is now preserved as-is and passed directly\nto CLI functions (no more unexpected transformations)\u003c/li\u003e\n\u003cli\u003eException: flag options with \u003ccode\u003edefault=True\u003c/code\u003e maintain backward compatibility\nby defaulting to their \u003ccode\u003eflag_value\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter can now be any type (\u003ccode\u003ebool\u003c/code\u003e, \u003ccode\u003eNone\u003c/code\u003e, etc.)\u003c/li\u003e\n\u003cli\u003eFixes inconsistencies reported in: \u003ca href=\"https://redirect.github.com/pallets/click/issues/1992\"\u003e#1992\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/2514\"\u003e#2514\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2610\"\u003e#2610\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3024\"\u003e#3024\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3030\"\u003e#3030\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003edefault\u003c/code\u003e to be set on \u003ccode\u003eArgument\u003c/code\u003e for \u003ccode\u003enargs = -1\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2164\"\u003e#2164\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3030\"\u003e#3030\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for \u003ccode\u003enargs\u003c/code\u003e option in combination with flag\noption \u003ca href=\"https://redirect.github.com/pallets/click/issues/2813\"\u003e#2813\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for nargs option in combination with flag option \u003ca href=\"https://redirect.github.com/pallets/click/issues/2813\"\u003e#2813\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix handling of quoted and escaped parameters in Fish autocompletion. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2995\"\u003e#2995\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3013\"\u003e#3013\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLazily import \u003ccode\u003eshutil\u003c/code\u003e.  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3023\"\u003e#3023\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eProperly forward exception information to resources registered with\n\u003ccode\u003eclick.core.Context.with_resource()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2447\"\u003e#2447\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3058\"\u003e#3058\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix regression related to EOF handling in CliRunner.  \u003ca href=\"https://redirect.github.com/pallets/click/issues/2939\"\u003e#2939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2940\"\u003e#2940\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.2.2\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.2.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.2.2/\"\u003ehttps://pypi.org/project/click/8.2.2/\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/blob/main/CHANGES.rst\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.3.1\u003c/h2\u003e\n\u003cp\u003eReleased 2025-11-15\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDon't discard pager arguments by correctly using \u003ccode\u003esubprocess.Popen\u003c/code\u003e. :issue:\u003ccode\u003e3039\u003c/code\u003e\n:pr:\u003ccode\u003e3055\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003eSentinel.UNSET\u003c/code\u003e default values by \u003ccode\u003eNone\u003c/code\u003e as they're passed through\nthe \u003ccode\u003eContext.invoke()\u003c/code\u003e method. :issue:\u003ccode\u003e3066\u003c/code\u003e :issue:\u003ccode\u003e3065\u003c/code\u003e :pr:\u003ccode\u003e3068\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of \u003ccode\u003eSentinel.UNSET\u003c/code\u003e happening too early, which caused incorrect\nbehavior for multiple parameters using the same name. :issue:\u003ccode\u003e3071\u003c/code\u003e :pr:\u003ccode\u003e3079\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when looking up for other parameters\nthrough the context inside parameter callbacks. :issue:\u003ccode\u003e3136\u003c/code\u003e :pr:\u003ccode\u003e3137\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix rendering when \u003ccode\u003eprompt\u003c/code\u003e and \u003ccode\u003econfirm\u003c/code\u003e parameter \u003ccode\u003eprompt_suffix\u003c/code\u003e is\nempty. :issue:\u003ccode\u003e3019\u003c/code\u003e :pr:\u003ccode\u003e3021\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eWhen \u003ccode\u003eSentinel.UNSET\u003c/code\u003e is found during parsing, it will skip calls to\n\u003ccode\u003etype_cast_value\u003c/code\u003e. :issue:\u003ccode\u003e3069\u003c/code\u003e :pr:\u003ccode\u003e3090\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 8.3.0\u003c/h2\u003e\n\u003cp\u003eReleased 2025-09-17\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eImproved flag option handling\u003c/strong\u003e: Reworked the relationship between \u003ccode\u003eflag_value\u003c/code\u003e\nand \u003ccode\u003edefault\u003c/code\u003e parameters for better consistency:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter value is now preserved as-is and passed directly\nto CLI functions (no more unexpected transformations)\u003c/li\u003e\n\u003cli\u003eException: flag options with \u003ccode\u003edefault=True\u003c/code\u003e maintain backward compatibility\nby defaulting to their \u003ccode\u003eflag_value\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter can now be any type (\u003ccode\u003ebool\u003c/code\u003e, \u003ccode\u003eNone\u003c/code\u003e, etc.)\u003c/li\u003e\n\u003cli\u003eFixes inconsistencies reported in: :issue:\u003ccode\u003e1992\u003c/code\u003e :issue:\u003ccode\u003e2514\u003c/code\u003e :issue:\u003ccode\u003e2610\u003c/code\u003e\n:issue:\u003ccode\u003e3024\u003c/code\u003e :pr:\u003ccode\u003e3030\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003edefault\u003c/code\u003e to be set on \u003ccode\u003eArgument\u003c/code\u003e for \u003ccode\u003enargs = -1\u003c/code\u003e. :issue:\u003ccode\u003e2164\u003c/code\u003e\n:pr:\u003ccode\u003e3030\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for \u003ccode\u003enargs\u003c/code\u003e option in combination with flag\noption :issue:\u003ccode\u003e2813\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix handling of quoted and escaped parameters in Fish autocompletion. :issue:\u003ccode\u003e2995\u003c/code\u003e :pr:\u003ccode\u003e3013\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLazily import \u003ccode\u003eshutil\u003c/code\u003e. :pr:\u003ccode\u003e3023\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eProperly forward exception information to resources registered with\n\u003ccode\u003eclick.core.Context.with_resource()\u003c/code\u003e. :issue:\u003ccode\u003e2447\u003c/code\u003e :pr:\u003ccode\u003e3058\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix regression related to EOF handling in \u003ccode\u003eCliRunner\u003c/code\u003e. :issue:\u003ccode\u003e2939\u003c/code\u003e :pr:\u003ccode\u003e2940\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 8.2.2\u003c/h2\u003e\n\u003cp\u003eReleased 2025-07-31\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix reconciliation of \u003ccode\u003edefault\u003c/code\u003e, \u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003etype\u003c/code\u003e parameters for\nflag options, as well as parsing and normalization of environment variables.\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/pallets/click/commit/1d038f270701498433cb432f54db89f95f07a845\"\u003e\u003ccode\u003e1d038f2\u003c/code\u003e\u003c/a\u003e release version 8.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/03f3889f505d0c9ca4f9d6810f9e4ba2799f2a66\"\u003e\u003ccode\u003e03f3889\u003c/code\u003e\u003c/a\u003e Fix Ruff UP038 warning (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3141\"\u003e#3141\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/3867781222cb63693ca67df94352d29d8e6e2770\"\u003e\u003ccode\u003e3867781\u003c/code\u003e\u003c/a\u003e Fix Ruff UP038 warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/b91bb9548a5617b1197add95e084d569f57149c3\"\u003e\u003ccode\u003eb91bb95\u003c/code\u003e\u003c/a\u003e Provide altered context to callbacks to hide \u003ccode\u003eUNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3137\"\u003e#3137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/437e1e3295c7ec979fc1bf285bb402ca20d847e7\"\u003e\u003ccode\u003e437e1e3\u003c/code\u003e\u003c/a\u003e Temporarily provide a fake context to the callback to hide \u003ccode\u003eUNSET\u003c/code\u003e values as ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/ea70da487b05d6bb758d472a3a9ffab4a5b7fcd5\"\u003e\u003ccode\u003eea70da4\u003c/code\u003e\u003c/a\u003e Don't test using a file in docs/ (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3102\"\u003e#3102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e27b307462b725722f620c69dd1d5509c032d18a\"\u003e\u003ccode\u003ee27b307\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003euv run --all-extras pyright --verifytypes click\u003c/code\u003e pass (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3072\"\u003e#3072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a92c573f3195c9da3058eadf1735d38af186d22c\"\u003e\u003ccode\u003ea92c573\u003c/code\u003e\u003c/a\u003e Fix test_edit to work with BSD sed (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3129\"\u003e#3129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/bd131e1ab63da2281d6dd9b8205ad2eb5a085468\"\u003e\u003ccode\u003ebd131e1\u003c/code\u003e\u003c/a\u003e Fix test_edit to work with BSD sed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/0b5c6b75f617e6ee2f9f6dcd071b8a4bf183d1ed\"\u003e\u003ccode\u003e0b5c6b7\u003c/code\u003e\u003c/a\u003e Add Best practices section  (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3127\"\u003e#3127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.1.8...8.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rich` from 14.0.0 to 14.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/releases\"\u003erich's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eThe Easy as Pi release\u003c/h2\u003e\n\u003cp\u003eThis release bumps Python compatibility to the just-released Python 3.14.\u003c/p\u003e\n\u003ch2\u003e[14.2.0] - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython3.14 compatibility \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3861\"\u003eTextualize/rich#3861\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eThe Lively Release\u003c/h2\u003e\n\u003cp\u003eLive objects may now be nested. Previously a progress bar inside another progress context would fail. See the changelog below for this and other changes.\u003c/p\u003e\n\u003ch2\u003e[14.1.0] - 2025-06-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003etyping_extensions\u003c/code\u003e from runtime dependencies \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3763\"\u003eTextualize/rich#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLive objects (including Progress) may now be nested \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3768\"\u003eTextualize/rich#3768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded padding property to Syntax which returns a tuple of four integers \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed extraction of recursive exceptions \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3772\"\u003eTextualize/rich#3772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed padding applied to Syntax \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ePanel\u003c/code\u003e title missing the panel background style \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3569\"\u003eTextualize/rich#3569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eTTY_INTERACTIVE\u003c/code\u003e environment variable to force interactive mode off or on \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3777\"\u003eTextualize/rich#3777\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/Textualize/rich/blob/master/CHANGELOG.md\"\u003erich's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[14.2.0] - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython3.14 compatibility \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3861\"\u003eTextualize/rich#3861\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[14.1.0] - 2025-06-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003etyping_extensions\u003c/code\u003e from runtime dependencies \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3763\"\u003eTextualize/rich#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLive objects (including Progress) may now be nested \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3768\"\u003eTextualize/rich#3768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded padding property to Syntax which returns a tuple of four integers \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed extraction of recursive exceptions \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3772\"\u003eTextualize/rich#3772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed padding applied to Syntax \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ePanel\u003c/code\u003e title missing the panel background style \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3569\"\u003eTextualize/rich#3569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eTTY_INTERACTIVE\u003c/code\u003e environment variable to force interactive mode off or on \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3777\"\u003eTextualize/rich#3777\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/Textualize/rich/commit/494f83c923ca54ecc943bf5e60c0004e65fbb54e\"\u003e\u003ccode\u003e494f83c\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/d476e85a19ea62966a25f6df0e0a287da52ab35f\"\u003e\u003ccode\u003ed476e85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3862\"\u003e#3862\u003c/a\u003e from GeroZayas/docs/es-readme-sync-2025-10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/518daaa39c17bad485c970bf229424784fbdf044\"\u003e\u003ccode\u003e518daaa\u003c/code\u003e\u003c/a\u003e docs(es): sync README.es.md (macOS, 16 colors, Python 3.8+)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/cd5074f87804aac2f6e5c6143e1cac5e3a0bddc5\"\u003e\u003ccode\u003ecd5074f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3861\"\u003e#3861\u003c/a\u003e from Textualize/python314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/041406ca9b60af8fcc00cd7fc1b2973ab51eb851\"\u003e\u003ccode\u003e041406c\u003c/code\u003e\u003c/a\u003e removed asv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/655b5210cb1403100a646d167cf027eec760dd9f\"\u003e\u003ccode\u003e655b521\u003c/code\u003e\u003c/a\u003e test fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/27c2d2df7523315de4b81577d414db8c1c7312f9\"\u003e\u003ccode\u003e27c2d2d\u003c/code\u003e\u003c/a\u003e bump for Python3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/ea9d4db5d84b4e834979304e3053bf757daae322\"\u003e\u003ccode\u003eea9d4db\u003c/code\u003e\u003c/a\u003e Update feature_request.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/2dca1b70359dac61e1bbfb6f14ebe19a5ab79c3d\"\u003e\u003ccode\u003e2dca1b7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3808\"\u003e#3808\u003c/a\u003e from Textualize/bump1410\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/19b6dddd807b887eaaf313174fff3eb2e22cda25\"\u003e\u003ccode\u003e19b6ddd\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Textualize/rich/compare/v14.0.0...v14.2.0\"\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.3 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\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\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/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\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 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.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.10 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.2.11\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eRelease version 3.2.11\u003c/p\u003e\n\u003cp\u003eShortlog of commits since last release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBruno Rocha (9): \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix(cli): handle empty hooks and boolean environments.\u003c/li\u003e\n\u003cli\u003efix: Better way for CLI to find the Django Settings\u003c/li\u003e\n\u003cli\u003efix: windows CI\u003c/li\u003e\n\u003cli\u003efeat: Run CLI as module with \u003ccode\u003epython -m dynaconf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1290\"\u003e#1290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: use sys.argv instead of click.get_os_args (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1292\"\u003e#1292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: \u003ccode\u003e-k\u003c/code\u003e must exit code 1 when key do not exist (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat: envless load file (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1295\"\u003e#1295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add correct supported python version to 3.2.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFabricio Aguiar (1): \u003ca href=\"https://github.com/fao89\"\u003e\u003ccode\u003e@​fao89\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: make raw variables private (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1287\"\u003e#1287\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePedro Brochado (1): \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: clarification on redis hash title when using custom envvar prefixes (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMilestone \u003ca href=\"https://github.com/dynaconf/dynaconf/milestone/31?closed=1\"\u003ehttps://github.com/dynaconf/dynaconf/milestone/31?closed=1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.11\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.11\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/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/releases/tag/3.2.11\"\u003e3.2.11\u003c/a\u003e - 2025-05-06\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd correct supported python version to 3.2.x. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-k\u003c/code\u003e must exit code 1 when key do not exist (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1293\"\u003e#1293\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003euse sys.argv instead of click.get_os_args (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1292\"\u003e#1292\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003ewindows CI. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003emake raw variables private (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1287\"\u003e#1287\u003c/a\u003e). \u003cem\u003eBy Fabricio Aguiar\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eBetter way for CLI to find the Django Settings. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003ehandle empty hooks and boolean environments.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eenvless load file (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1295\"\u003e#1295\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eRun CLI as module with \u003ccode\u003epython -m dynaconf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1290\"\u003e#1290\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eclarification on redis hash title when using custom envvar prefixes (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1273\"\u003e#1273\u003c/a\u003e). \u003cem\u003eBy Pedro Brochado\u003c/em\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/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/c61da8fd191196c1341bd3d8a8dd895e9cf671ae\"\u003e\u003ccode\u003ec61da8f\u003c/code\u003e\u003c/a\u003e Release version 3.2.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/f8189fb6c130ff4709450e7daebcf1c174aea248\"\u003e\u003ccode\u003ef8189fb\u003c/code\u003e\u003c/a\u003e fix: add correct supported python version to 3.2.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.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\u003e7.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\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\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\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\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\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\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 CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\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\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\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 development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\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:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\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.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\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\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\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\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/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlalchemy` from 2.0.40 to 2.0.44\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sqlalchemy/sqlalchemy/releases\"\u003esqlalchemy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.0.44\u003c/h1\u003e\n\u003cp\u003eReleased: October 10, 2025\u003c/p\u003e\n\u003ch2\u003eplatform\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[platform] [bug]\u003c/strong\u003e Unblocked automatic greenlet installation for Python 3.14 now that\nthere are greenlet wheels on pypi for python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eorm\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[orm] [usecase]\u003c/strong\u003e The way ORM Annotated Declarative interprets Python \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e type aliases\nin \u003ccode\u003eMapped[]\u003c/code\u003e annotations has been refined to expand the lookup scheme. A\n\u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e type can now be resolved based on either its direct presence in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e or its immediate resolved\nvalue, as long as a recursive lookup across multiple \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e types is\nnot required for it to resolve. This change reverses part of the\nrestrictions introduced in 2.0.37 as part of \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/11955\"\u003e#11955\u003c/a\u003e, which\ndeprecated (and disallowed in 2.1) the ability to resolve any \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e\ntype that was not explicitly present in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e. Recursive lookups of\n\u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e types remains deprecated in 2.0 and disallowed in version 2.1,\nas do implicit lookups of \u003ccode\u003eNewType\u003c/code\u003e types without an entry in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eAdditionally, new support has been added for generic \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e aliases that\nrefer to \u003ca href=\"https://peps.python.org/pep-0593\"\u003ePEP 593\u003c/a\u003e \u003ccode\u003eAnnotated\u003c/code\u003e constructs containing\n\u003ccode\u003e_orm.mapped_column()\u003c/code\u003e configurations. See the sections below for\nexamples.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/12829\"\u003e#12829\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[orm] [bug]\u003c/strong\u003e Fixed a caching issue where \u003ccode\u003e_orm.with_loader_criteria()\u003c/code\u003e would\nincorrectly reuse cached bound parameter values when used with\n\u003ccode\u003e_sql.CompoundSelect\u003c/code\u003e constructs such as \u003ccode\u003e_sql.union()\u003c/code\u003e. The\nissue was caused by the cache key for compound selects not including the\nexecution options that are part of the \u003ccode\u003e_sql.Executable\u003c/code\u003e base class,\nwhich \u003ccode\u003e_orm.with_loader_criteria()\u003c/code\u003e uses to apply its criteria\ndynamically. The fix ensures that compound selects and other executable\nconstructs properly include execution options in their cache key traversal.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/12905\"\u003e#12905\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eengine\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[engine] [bug]\u003c/strong\u003e Implemented initial support for free-threaded Python by adding new tests\nand reworking the test harness to include Python 3.13t and Python 3.14t in\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\u003eSee full diff in \u003ca href=\"https://github.com/sqlalchemy/sqlalchemy/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg2` from 2.9.10 to 2.9.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg2/blob/master/NEWS\"\u003epsycopg2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eCurrent release\u003c/h2\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.11\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eAvoid a segfault passing more arguments than placeholders if Python is built\nwith assertions enabled (:ticket:\u003ccode\u003e[#1791](https://github.com/psycopg/psycopg2/issues/1791)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd riscv64 platform binary packages (:ticket:\u003ccode\u003e[#1813](https://github.com/psycopg/psycopg2/issues/1813)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e~psycopg2.errorcodes\u003c/code\u003e map and \u003ccode\u003e~psycopg2.errors\u003c/code\u003e classes updated to\nPostgreSQL 18.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.10\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eReceive notifications on commit (:ticket:\u003ccode\u003e[#1728](https://github.com/psycopg/psycopg2/issues/1728)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e~psycopg2.errorcodes\u003c/code\u003e map and \u003ccode\u003e~psycopg2.errors\u003c/code\u003e classes updated to\nPostgreSQL 17.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.9\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.6.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.8\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWheel package bundled with PostgreSQL 16 libpq in order to add support for\nrecent features, such as \u003ccode\u003esslcertmode\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.7\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix propagation of exceptions raised during module initialization\n(:ticket:\u003ccode\u003e[#1598](https://github.com/psycopg/psycopg2/issues/1598)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eFix building when pg_config returns an empty string (:ticket:\u003ccode\u003e[#1599](https://github.com/psycopg/psycopg2/issues/1599)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eWheel package bundled with OpenSSL 1.1.1v.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.6\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\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/psycopg/psycopg2/commit/fd9ae8cad2bcfc3e7e9410e7b6f07cda8f4f05ec\"\u003e\u003ccode\u003efd9ae8c\u003c/code\u003e\u003c/a\u003e chore: bump to version 2.9.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/d923840546942534f0956d9202f914fd9feac5fd\"\u003e\u003ccode\u003ed923840\u003c/code\u003e\u003c/a\u003e chore: update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/d42dc7169d3cd93517e282e9ef5dc2a2b40650a2\"\u003e\u003ccode\u003ed42dc71\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1791'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/4fde6560c32f06ad1304404c9f7f86148dcc4be0\"\u003e\u003ccode\u003e4fde656\u003c/code\u003e\u003c/a\u003e fix: avoid failed assert passing more arguments than placeholders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/8308c19d6af0d904b313997539ed33415990a74e\"\u003e\u003ccode\u003e8308c19\u003c/code\u003e\u003c/a\u003e fix: drop warning about the use of deprecated PyWeakref_GetObject function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/1a1eabf098a3374409bb2ab4b594777b900f396d\"\u003e\u003ccode\u003e1a1eabf\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/github-script from 7 to 8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/897af8b38beda851d7257dfc525129e37c0ec9e0\"\u003e\u003ccode\u003e897af8b\u003c/code\u003e\u003c/a\u003e build(deps): bump peter-evans/repository-dispatch from 3 to 4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/ceefd305117113ca10e383a626e87ba0796f3638\"\u003e\u003ccode\u003eceefd30\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/4dc585430cabe94cee96c5a9de0265d0f55370f1\"\u003e\u003ccode\u003e4dc5854\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/setup-python from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/1945788dcf6172bb1b9328ebc3587ccf0e6a659c\"\u003e\u003ccode\u003e1945788\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psycopg/psycopg2/issues/1802\"\u003e#1802\u003c/a\u003e from edgarrmondragon/cp314-wheels\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg2/compare/2.9.10...2.9.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beaupy` from 3.10.1 to 3.10.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/petereon/beaupy/releases\"\u003ebeaupy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.10.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update dependency flake8 to v7.1.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/129\"\u003epetereon/beaupy#129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency isort to v5.13.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/130\"\u003epetereon/beaupy#130\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency mypy to v1.14.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/131\"\u003epetereon/beaupy#131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: adding documentation for global config by \u003ca href=\"https://github.com/petereon\"\u003e\u003ccode\u003e@​petereon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/148\"\u003epetereon/beaupy#148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency pytest to v8.4.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/147\"\u003epetereon/beaupy#147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency black to v25 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/144\"\u003epetereon/beaupy#144\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency pydoc-markdown to v4.8.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/132\"\u003epetereon/beaupy#132\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\"\u003ehttps://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\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/petereon/beaupy/commit/a2dc15764508c0451ed4dc386f3b0761fe7a9ce2\"\u003e\u003ccode\u003ea2dc157\u003c/code\u003e\u003c/a\u003e chore: bump version from 3.10.1 to 3.10.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/7599e5a43be6893c81612314f410ffa602a15f57\"\u003e\u003ccode\u003e7599e5a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/132\"\u003e#132\u003c/a\u003e from petereon/renovate/pydoc-markdown-4.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/6b2bb33d4fef6f2a607e1f42c873bd92ffc2b0d5\"\u003e\u003ccode\u003e6b2bb33\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pydoc-markdown to v4.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/d2b0cbc3bb6b191816fdef9319a150e9b305ae7f\"\u003e\u003ccode\u003ed2b0cbc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/144\"\u003e#144\u003c/a\u003e from petereon/renovate/black-25.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/926fb4e8773f587417e7a3f453af1641364888e5\"\u003e\u003ccode\u003e926fb4e\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency black to v25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/df126efc542641c8f7385f8087a19a95ee1615b7\"\u003e\u003ccode\u003edf126ef\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/147\"\u003e#147\u003c/a\u003e from petereon/renovate/pytest-8.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/0eb77250022a166836a4594a489d9c178591234b\"\u003e\u003ccode\u003e0eb7725\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest to v8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/7b9234631ce3510e433fbb59d4c0e829d70fd569\"\u003e\u003ccode\u003e7b92346\u003c/code\u003e\u003c/a\u003e chore: linting code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/531e870193a7cb26ab43370a45d8562cb44d8b15\"\u003e\u003ccode\u003e531e870\u003c/code\u003e\u003c/a\u003e chore: fix weird types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/dfd9dbc54327c19455197566f7161de08ad3180b\"\u003e\u003ccode\u003edfd9dbc\u003c/code\u003e\u003c/a\u003e docs: adding documentation for global config (\u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/148\"\u003e#148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sigstore` from 3.6.2 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sigstore/sigstore-python/releases\"\u003esigstore's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecli: Support using other Sigstore instances with \u003ccode\u003e--instance URL\u003c/code\u003e.\nNew instances are trusted with new top level command \u003ccode\u003etrust-instance ROOTFILE\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/sigstore/sigstore-python/pull/1548\"\u003e#1548\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded ...\n\n_Description has been truncated_","html_url":"https://github.com/repository-service-tuf/repository-service-tuf-cli/pull/915","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf-cli/issues/915","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/915/packages"},{"uuid":"3607663700","node_id":"PR_kwDOI5l2cc6yg2p7","number":110,"state":"open","title":"deps(deps): bump hvac from 2.3.0 to 2.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T11:50:04.000Z","updated_at":"2025-11-10T11:50:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps)","packages":[{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.3.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.3.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ChiefGyk3D/Stream-Daemon/pull/110","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChiefGyk3D%2FStream-Daemon/issues/110","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/110/packages"},{"uuid":"3572335470","node_id":"PR_kwDODTo4k86wsyFZ","number":7602,"state":"open","title":"chore(deps-dev): bump hvac from 2.3.0 to 2.4.0","user":"dependabot[bot]","labels":["dependencies","internal","size/XS","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-30T20:09:16.000Z","updated_at":"2025-10-31T17:00:51.180Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.3.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.3.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/aws-powertools/powertools-lambda-python/pull/7602","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-powertools%2Fpowertools-lambda-python/issues/7602","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7602/packages"},{"uuid":"3532329225","node_id":"PR_kwDOHfpFZM6uoDVW","number":222,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-20T14:35:16.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-20T12:52:36.000Z","updated_at":"2025-10-20T14:35:18.000Z","time_to_close":6160,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/222","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/222","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/222/packages"},{"uuid":"2890022161","node_id":"PR_kwDOHfpFZM6sQj0R","number":220,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-10-06T15:54:46.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-10-06T12:29:00.000Z","updated_at":"2025-10-06T15:54:47.000Z","time_to_close":12346,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/220","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/220","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/220/packages"},{"uuid":"2871308338","node_id":"PR_kwDOHfpFZM6rJLAy","number":219,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-09-29T20:14:38.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-09-29T16:33:44.000Z","updated_at":"2025-09-29T20:14:39.000Z","time_to_close":13254,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/219","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/219","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/219/packages"},{"uuid":"2822118521","node_id":"PR_kwDOBAZmNc6oNhx5","number":118,"state":"open","title":"Bump hvac from 2.1.0 to 2.3.0","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-12T10:03:41.000Z","updated_at":"2025-09-12T10:03:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"hvac","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.1.0 to 2.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.1.0\u0026new-version=2.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/gopythongo/gopythongo/pull/118","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopythongo%2Fgopythongo/issues/118","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/118/packages"},{"uuid":"2773329812","node_id":"PR_kwDOHfpFZM6lTaeU","number":215,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-26T03:24:46.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-08-26T00:05:09.000Z","updated_at":"2025-08-26T03:24:47.000Z","time_to_close":11977,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.2` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/main/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/se...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/215","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/215","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/215/packages"},{"uuid":"2754064646","node_id":"PR_kwDOHfpFZM6kJ7EG","number":214,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-19T00:04:16.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-08-18T17:49:42.000Z","updated_at":"2025-08-19T00:04:16.000Z","time_to_close":22474,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.2` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/main/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/se...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/214","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/214","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/214/packages"}],"issue_packages":[{"old_version":"\u003e=2.0.0","new_version":"\u003e=2.4.0","update_type":"minor","path":null,"pr_created_at":"2026-05-17T10:13:30.000Z","version_change":"\u003e=2.0.0 → \u003e=2.4.0","issue":{"uuid":"4463136930","node_id":"PR_kwDOSd9eGM7cW6mc","number":4,"state":"closed","title":"deps(dev): update hvac requirement from \u003e=2.0.0 to \u003e=2.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-05-17T10:44:05.000Z","author_association":null,"state_reason":null,"created_at":"2026-05-17T10:13:30.000Z","updated_at":"2026-05-17T10:44:07.000Z","time_to_close":1835,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(dev): update","packages":[{"name":"hvac","old_version":"\u003e=2.0.0","new_version":"\u003e=2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Updates the requirements on [hvac](https://github.com/hvac/hvac) 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/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.0.0...v2.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/Coding-Dev-Tools/envault/pull/4","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/Coding-Dev-Tools%2Fenvault/issues/4","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/4/packages"}},{"old_version":"\u003e=2.1.0","new_version":"\u003e=2.4.0","update_type":"minor","path":"/lib/python","pr_created_at":"2026-04-13T00:58:01.000Z","version_change":"\u003e=2.1.0 → \u003e=2.4.0","issue":{"uuid":"4250551236","node_id":"PR_kwDORnbkb87R1qZa","number":10,"state":"open","title":"chore(deps): Update hvac requirement from \u003e=2.1.0 to \u003e=2.4.0 in /lib/python","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-04-13T00:58:01.000Z","updated_at":"2026-04-13T00:58:02.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps): Update","packages":[{"name":"hvac","old_version":"\u003e=2.1.0","new_version":"\u003e=2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":"/lib/python","ecosystem":"pip"},"body":"Updates the requirements on [hvac](https://github.com/hvac/hvac) 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/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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/douglas-brush/dev-identity-secrets-reference/pull/10","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/douglas-brush%2Fdev-identity-secrets-reference/issues/10","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/10/packages"}},{"old_version":"2.1.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2026-03-02T19:22:44.000Z","version_change":"2.1.0 → 2.4.0","issue":{"uuid":"4012883749","node_id":"PR_kwDOPrR8PM7HalTE","number":1521,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 150 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-03-02T19:22:44.000Z","updated_at":"2026-03-02T19:25:31.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":150,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.84.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.9","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.4","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.2","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.135.1","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.25.0","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.0","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.4","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.16","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-text-splitters","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.10","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.9","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.9","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nltk","old_version":"3.9.2","new_version":"3.9.3","repository_url":"https://github.com/nltk/nltk"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.14.0","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.1","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.42.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.2","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.4","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.54.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.48","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"stevedore","old_version":"5.6.0","new_version":"5.7.0"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.24.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.1","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"uvicorn","old_version":"0.40.0","new_version":"0.41.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.23.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-material","old_version":"9.7.1","new_version":"9.7.3","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"backrefs","old_version":"6.1","new_version":"6.2","repository_url":"https://github.com/facelessuser/backrefs"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 150 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.84.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.9` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.4` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.2` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.135.1` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.25.0` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.2` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.4` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.16` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.10` |\n| [langchain-text-splitters](https://github.com/langchain-ai/langchain) | `1.1.0` | `1.1.1` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.10` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.9` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.9` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nltk](https://github.com/nltk/nltk) | `3.9.2` | `3.9.3` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.14.0` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.1` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.42.0` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.2` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.4` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.54.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.48` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [stevedore](https://docs.openstack.org/stevedore) | `5.6.0` | `5.7.0` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.24.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.40.0` | `0.41.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.6` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.23.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.1` | `9.7.3` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [backrefs](https://github.com/facelessuser/backrefs) | `6.1` | `6.2` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.84.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.84.0\u003c/h2\u003e\n\u003ch2\u003e0.84.0 (2026-02-25)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.83.0...v0.84.0\"\u003ev0.83.0...v0.84.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e change array_format to brackets (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/925d2ad6b76ad7c15de07b9b2768738775f71631\"\u003e925d2ad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e remove publishing section from cli target (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7bc7cebc68db70f08fce23e7e0b24acbc9ff37a7\"\u003e7bc7ceb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehelpers:\u003c/strong\u003e add conversion helpers for MCP tools, prompts, and resources (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1383\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9489751386d1540bf80eff63ab47ca2b3cc18fa1\"\u003e9489751\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing raw jsonl results method (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1009d4aca8be42973ca39104bc9bd8087f51ff9c\"\u003e1009d4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e add request options to SSE classes (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4f4bc8e6241c2ccee8dfe4cdbc522081e3e30f08\"\u003e4f4bc8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f7056e09411a45798a678be5766a7b7d6dcbc7a9\"\u003ef7056e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/143efccfcc20c12f920b6ba242eff7c0feeea7c4\"\u003e143efcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4a4dc9f6b36ab0224095790f4311c7f60c9845f7\"\u003e4a4dc9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e update jsonl tests (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a8e6a6e5544b9f1626e3fb5faa31a1accfc81441\"\u003ea8e6a6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erebrand to Claude SDK and streamline README (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/6b544058ab19e55e1c76a4ba9816205d1eedc630\"\u003e6b54405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.83.0\u003c/h2\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.82.0\u003c/h2\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.84.0 (2026-02-25)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.83.0...v0.84.0\"\u003ev0.83.0...v0.84.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e change array_format to brackets (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/925d2ad6b76ad7c15de07b9b2768738775f71631\"\u003e925d2ad\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e remove publishing section from cli target (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7bc7cebc68db70f08fce23e7e0b24acbc9ff37a7\"\u003e7bc7ceb\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003ehelpers:\u003c/strong\u003e add conversion helpers for MCP tools, prompts, and resources (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1383\"\u003e#1383\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9489751386d1540bf80eff63ab47ca2b3cc18fa1\"\u003e9489751\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd missing raw jsonl results method (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1009d4aca8be42973ca39104bc9bd8087f51ff9c\"\u003e1009d4a\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e add request options to SSE classes (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4f4bc8e6241c2ccee8dfe4cdbc522081e3e30f08\"\u003e4f4bc8e\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f7056e09411a45798a678be5766a7b7d6dcbc7a9\"\u003ef7056e0\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/143efccfcc20c12f920b6ba242eff7c0feeea7c4\"\u003e143efcc\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4a4dc9f6b36ab0224095790f4311c7f60c9845f7\"\u003e4a4dc9f\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003einternal:\u003c/strong\u003e update jsonl tests (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a8e6a6e5544b9f1626e3fb5faa31a1accfc81441\"\u003ea8e6a6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocumentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erebrand to Claude SDK and streamline README (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/6b544058ab19e55e1c76a4ba9816205d1eedc630\"\u003e6b54405\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\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/anthropics/anthropic-sdk-python/commit/49d639a671cb0ac30c767e8e1e68fdd5925205d5\"\u003e\u003ccode\u003e49d639a\u003c/code\u003e\u003c/a\u003e release: 0.84.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4d73b2159f7f3e88113a904f785de58ec4157045\"\u003e\u003ccode\u003e4d73b21\u003c/code\u003e\u003c/a\u003e feat(helpers): add conversion helpers for MCP tools, prompts, and resources (...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0e4092173fc52d773675f8e3a4ced6a5e2f67c9f\"\u003e\u003ccode\u003e0e40921\u003c/code\u003e\u003c/a\u003e docs: rebrand to Claude SDK and streamline README\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c3017a227c67377b862644feb463c0d8a1e9ddc9\"\u003e\u003ccode\u003ec3017a2\u003c/code\u003e\u003c/a\u003e chore(internal): simplify http snapshots (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1092\"\u003e#1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/470fda9c14714117342c0491d6e436d158bbb4ab\"\u003e\u003ccode\u003e470fda9\u003c/code\u003e\u003c/a\u003e chore(internal): make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient to env\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c30c72d710dea90437a73713296e76c12518c359\"\u003e\u003ccode\u003ec30c72d\u003c/code\u003e\u003c/a\u003e chore: add missing raw jsonl results method\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9d9a5a1aab3aa67c665c39bbeed3fec298fc2e6a\"\u003e\u003ccode\u003e9d9a5a1\u003c/code\u003e\u003c/a\u003e chore(internal):  make \u003ccode\u003etest_proxy_environment_variables\u003c/code\u003e more resilient\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c28d2d50a5f5197839c36fb4741bee8cd1e976c1\"\u003e\u003ccode\u003ec28d2d5\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/bb13f1ea6be3941342115fdb125e3fe225252071\"\u003e\u003ccode\u003ebb13f1e\u003c/code\u003e\u003c/a\u003e chore(internal): add request options to SSE classes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ab0ccb990d098ef56c0367abcb0c745d7a58a99e\"\u003e\u003ccode\u003eab0ccb9\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.84.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.9\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.9\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.8...v1.6.9\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.8...v1.6.9\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003eChanges in \u003ccode\u003ejose\u003c/code\u003e module\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eNot using header's \u003ccode\u003ejwk\u003c/code\u003e automatically\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003eES256K\u003c/code\u003e into default jwt algorithms\u003c/li\u003e\n\u003cli\u003eRemove deprecated algorithm from default registry\u003c/li\u003e\n\u003cli\u003eGenerate random \u003ccode\u003ecek\u003c/code\u003e when \u003ccode\u003ecek\u003c/code\u003e length doesn't match\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.8\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eEdDSA\u003c/code\u003e to default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eImplement RFC9700 PKCE downgrade countermeasure.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/9266eaa2227ad7e21dc731b2a4a01909aabd934b\"\u003e\u003ccode\u003e9266eaa\u003c/code\u003e\u003c/a\u003e chore: release 1.6.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b9bb2b25bf8b7e01512d847a95c1749646eaa72b\"\u003e\u003ccode\u003eb9bb2b2\u003c/code\u003e\u003c/a\u003e fix(oidc): fail close at validating c_hash and at_hash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/1b0a1d988842bff7347c4ec0a70e45c3ba55504e\"\u003e\u003ccode\u003e1b0a1d9\u003c/code\u003e\u003c/a\u003e fix(jose): generate random cek when cek length doesn't match\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/5be3c518794b7322375bae2bf1871713d9b5c2fb\"\u003e\u003ccode\u003e5be3c51\u003c/code\u003e\u003c/a\u003e fix(jose): add ES256K into default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/48b345f29f6c459f11c6a40162b6c0b742ef2e22\"\u003e\u003ccode\u003e48b345f\u003c/code\u003e\u003c/a\u003e fix(jose): remove deprecated algorithm from default registry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/a5d4b2d4c9e46bfa11c82f85fdc2bcc0b50ae681\"\u003e\u003ccode\u003ea5d4b2d\u003c/code\u003e\u003c/a\u003e fix(jose): do not use header's jwk automatically\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.9\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.4\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.9.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore: fixed some typos in comments by \u003ca href=\"https://github.com/jakob1379\"\u003e\u003ccode\u003e@​jakob1379\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1351\"\u003ePyCQA/bandit#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.6.0 to 3.7.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1353\"\u003ePyCQA/bandit#1353\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.18.0 to 6.19.2 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1357\"\u003ePyCQA/bandit#1357\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B613 crash when reading from stdin by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1361\"\u003ePyCQA/bandit#1361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInclude filename in nosec 'no failed test' warning by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1363\"\u003ePyCQA/bandit#1363\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B615 false positive when revision is set via variable by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1358\"\u003ePyCQA/bandit#1358\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLower version guard in check_ast_node to Python 3.12 by \u003ca href=\"https://github.com/rcgray\"\u003e\u003ccode\u003e@​rcgray\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1355\"\u003ePyCQA/bandit#1355\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B106 reporting wrong line number on multiline function calls by \u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1360\"\u003ePyCQA/bandit#1360\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/jakob1379\"\u003e\u003ccode\u003e@​jakob1379\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1351\"\u003ePyCQA/bandit#1351\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/worksbyfriday\"\u003e\u003ccode\u003e@​worksbyfriday\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1361\"\u003ePyCQA/bandit#1361\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/rcgray\"\u003e\u003ccode\u003e@​rcgray\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1355\"\u003ePyCQA/bandit#1355\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.9.3...1.9.4\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.3...1.9.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/92ae8b82fb422a639f0ed8d99e96cea769594e08\"\u003e\u003ccode\u003e92ae8b8\u003c/code\u003e\u003c/a\u003e Fix B106 reporting wrong line number on multiline function calls (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1360\"\u003e#1360\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/c8c8a55c3307333b8eb46cb2ef46d49b1fad6546\"\u003e\u003ccode\u003ec8c8a55\u003c/code\u003e\u003c/a\u003e Lower version guard in check_ast_node to Python 3.12 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1355\"\u003e#1355\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/8f2f9284fca830ca017b2e2cc3ddc2a7b74b7040\"\u003e\u003ccode\u003e8f2f928\u003c/code\u003e\u003c/a\u003e Fix B615 false positive when revision is set via variable (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1358\"\u003e#1358\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e27493f71c114e0e5dfc0a475d225d7f9f4a7e2b\"\u003e\u003ccode\u003ee27493f\u003c/code\u003e\u003c/a\u003e Include filename in nosec 'no failed test' warning (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1363\"\u003e#1363\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b69b336450301d424e5ba04c9a58e8d41b7169b6\"\u003e\u003ccode\u003eb69b336\u003c/code\u003e\u003c/a\u003e Fix B613 crash when reading from stdin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1361\"\u003e#1361\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/e418b798abcc3f2b00c07fd6315da8fe9aeead00\"\u003e\u003ccode\u003ee418b79\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.18.0 to 6.19.2 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1357\"\u003e#1357\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/ff646fd7e0e34fb350196fc58448fad17178c27a\"\u003e\u003ccode\u003eff646fd\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.6.0 to 3.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1353\"\u003e#1353\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/c0def6c7ebab60f98c28ba759d488f4fbe6dae89\"\u003e\u003ccode\u003ec0def6c\u003c/code\u003e\u003c/a\u003e chore: fixed some typos in comments (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1351\"\u003e#1351\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.2\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/264b2472bf3c09522851bf7c7fa7d1c88bea044f\"\u003e\u003ccode\u003e264b247\u003c/code\u003e\u003c/a\u003e 1.38.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/e57065d9ef83e65f5f0f63f097ee2798d370b021\"\u003e\u003ccode\u003ee57065d\u003c/code\u003e\u003c/a\u003e Extract some duplicated test helpers and improve the \u003cstrong\u003ecall\u003c/strong\u003e tests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1521","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1521","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1521/packages"}},{"old_version":"2.1.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2026-02-23T19:23:27.000Z","version_change":"2.1.0 → 2.4.0","issue":{"uuid":"3979774980","node_id":"PR_kwDOPrR8PM7FuvAs","number":1518,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 149 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":11,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-23T19:23:27.000Z","updated_at":"2026-03-02T20:07:47.730Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":149,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.83.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.8","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.1","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.132.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.24.3","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask","old_version":"3.1.2","new_version":"3.1.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.1","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.3","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.15","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-text-splitters","old_version":"1.1.0","new_version":"1.1.1","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.9","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.6","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.13.1","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.1","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.42.0","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.2","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.53.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"stevedore","old_version":"5.6.0","new_version":"5.7.0"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.24.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.1","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"uvicorn","old_version":"0.40.0","new_version":"0.41.0","repository_url":"https://github.com/Kludex/uvicorn"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.6","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.22.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"responses","old_version":"0.25.8","new_version":"0.26.0","repository_url":"https://github.com/getsentry/responses"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-material","old_version":"9.7.1","new_version":"9.7.2","repository_url":"https://github.com/squidfunk/mkdocs-material"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"backrefs","old_version":"6.1","new_version":"6.2","repository_url":"https://github.com/facelessuser/backrefs"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 149 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.83.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.8` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.3` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.1` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.132.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.24.3` |\n| [flask](https://github.com/pallets/flask) | `3.1.2` | `3.1.3` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.2` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.1` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.3` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.15` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.10` |\n| [langchain-text-splitters](https://github.com/langchain-ai/langchain) | `1.1.0` | `1.1.1` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.9` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.8` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.6` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.13.1` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.1` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.42.0` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.2` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.53.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.46` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [stevedore](https://docs.openstack.org/stevedore) | `5.6.0` | `5.7.0` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.24.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.1` |\n| [uvicorn](https://github.com/Kludex/uvicorn) | `0.40.0` | `0.41.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.6` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.22.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [responses](https://github.com/getsentry/responses) | `0.25.8` | `0.26.0` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.7.1` | `9.7.2` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [backrefs](https://github.com/facelessuser/backrefs) | `6.1` | `6.2` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.83.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.83.0\u003c/h2\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.82.0\u003c/h2\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.81.0\u003c/h2\u003e\n\u003ch2\u003e0.81.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.80.0...v0.81.0\"\u003ev0.80.0...v0.81.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Make new tool versions available as top level tool types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0a385c29d26981f846b7394aefc89eebb43a4b60\"\u003e0a385c2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.80.0\u003c/h2\u003e\n\u003ch2\u003e0.80.0 (2026-02-17)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.79.0...v0.80.0\"\u003ev0.79.0...v0.80.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Releasing claude-sonnet-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/d518d6ecede3d0638f0b14950dc2be8efa0b4ff4\"\u003ed518d6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix spec errors (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1413a76f905e590fab583417f5cb1eef9f537c2c\"\u003e1413a76\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.83.0 (2026-02-19)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.82.0...v0.83.0\"\u003ev0.82.0...v0.83.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Add top-level cache control (automatic caching) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a940123da34ac33f0b6f20ce91807829451d1233\"\u003ea940123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eupdate mock server docs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/34ef48ceb0f1734d6b695890f689dc42eb0b004e\"\u003e34ef48c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.82.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.81.0...v0.82.0\"\u003ev0.81.0...v0.82.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix shared UserLocation and error code types (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/da3b931a2be768d77c228a4804d2f7f75caeb71c\"\u003eda3b931\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd backward-compat aliases for removed nested UserLocation classes (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1409\"\u003e#1409\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/56db1e3db6108e1c0f4e9363a5f23b54976dc877\"\u003e56db1e3\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.81.0 (2026-02-18)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.80.0...v0.81.0\"\u003ev0.80.0...v0.81.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e manual updates (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/0a385c29d26981f846b7394aefc89eebb43a4b60\"\u003e0a385c2\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.80.0 (2026-02-17)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.79.0...v0.80.0\"\u003ev0.79.0...v0.80.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Releasing claude-sonnet-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/d518d6ecede3d0638f0b14950dc2be8efa0b4ff4\"\u003ed518d6e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e fix spec errors (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1413a76f905e590fab583417f5cb1eef9f537c2c\"\u003e1413a76\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove speed from ga messages (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1402\"\u003e#1402\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f6ce67c3ed5f2fc4a2fc48fb9d7bc6f1bbb5bd4a\"\u003ef6ce67c\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\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/anthropics/anthropic-sdk-python/commit/7a6c642f51b603f9ef46c5603f48ccd55371e4cb\"\u003e\u003ccode\u003e7a6c642\u003c/code\u003e\u003c/a\u003e release: 0.83.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7ecac54c1ae91eb205fff16acbf65b36e444ed19\"\u003e\u003ccode\u003e7ecac54\u003c/code\u003e\u003c/a\u003e feat(api): Add top-level cache control (automatic caching)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/74793c8f43608aa19e1a05eea7b715509bfc1aa5\"\u003e\u003ccode\u003e74793c8\u003c/code\u003e\u003c/a\u003e codegen metadata\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f1181087ae843cad9ebd2cdab0e5bc052eec6de6\"\u003e\u003ccode\u003ef118108\u003c/code\u003e\u003c/a\u003e chore: update mock server docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/c6499b9515a81eca05b6008920255f5f0f2ca17e\"\u003e\u003ccode\u003ec6499b9\u003c/code\u003e\u003c/a\u003e release: 0.82.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1186\"\u003e#1186\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/acc4720fca9aa1c3690dc52d124ac79787b71b3a\"\u003e\u003ccode\u003eacc4720\u003c/code\u003e\u003c/a\u003e release: 0.81.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/4de03c2ddc247084770a04a203d2e71666a6ad37\"\u003e\u003ccode\u003e4de03c2\u003c/code\u003e\u003c/a\u003e release: 0.80.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/cd1b39bf073c5482ed1c717f11147365eb68bbe9\"\u003e\u003ccode\u003ecd1b39b\u003c/code\u003e\u003c/a\u003e release: 0.79.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/fb52a6a09d09cde88913e36dadb03c335815d79a\"\u003e\u003ccode\u003efb52a6a\u003c/code\u003e\u003c/a\u003e fix: pass speed parameter through in sync beta count_tokens\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/b7c2df239d1256ee358501a2cd89bfe9ea129abe\"\u003e\u003ccode\u003eb7c2df2\u003c/code\u003e\u003c/a\u003e feat(api): enabling fast-mode in claude-opus-4-6\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.83.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.8\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.7...v1.6.8\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd \u003ccode\u003eEdDSA\u003c/code\u003e to default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/bb7a315befbad333faf9a23ef574d6e3134a6774\"\u003e\u003ccode\u003ebb7a315\u003c/code\u003e\u003c/a\u003e chore: release 1.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/0a423d4638bed1c0fe4597b2296a85c5bb59fba2\"\u003e\u003ccode\u003e0a423d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/844\"\u003e#844\u003c/a\u003e from azmeuk/806-get-jwt-config-client\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489\"\u003e\u003ccode\u003e2808378\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/714502a4738bc29f26eb245b0c66718d8536cdda\"\u003e\u003ccode\u003e714502a\u003c/code\u003e\u003c/a\u003e feat: get_jwt_config takes a client parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/260d04edee23d8470057ea659c16fb8a2c7b0dc2\"\u003e\u003ccode\u003e260d04e\u003c/code\u003e\u003c/a\u003e Fix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/eb37124bbbec6ccbfba3699d8960f9710d330ad8\"\u003e\u003ccode\u003eeb37124\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/778\"\u003e#778\u003c/a\u003e from shc261392/fix-httpx-oauth1-form-data-incorrect-s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.3\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.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/36d6f3c091d84dc547019d773ab6e63a1cbc23af\"\u003e\u003ccode\u003e36d6f3c\u003c/code\u003e\u003c/a\u003e Update tox tests for Python 3.10 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1346\"\u003e#1346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/da0d33816ba5c5f8f72a380720ad054596867807\"\u003e\u003ccode\u003eda0d338\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1341\"\u003e#1341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/649b9bdf87f4f9d850b29819b14b847bd3b8f970\"\u003e\u003ccode\u003e649b9bd\u003c/code\u003e\u003c/a\u003e Add check for hardcoded passwords in dicts. (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/3c56109061524f5907cc4d475b7370bac47a451b\"\u003e\u003ccode\u003e3c56109\u003c/code\u003e\u003c/a\u003e Fix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1337\"\u003e#1337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b790ce22f0a69f53468c1755e9d37e6349a2c8c2\"\u003e\u003ccode\u003eb790ce2\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/0b73bbe59642097050d5c698e55d13bae2c6b78c\"\u003e\u003ccode\u003e0b73bbe\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1334\"\u003e#1334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ce372dde9b384dfa25c0294dc637ce0ec4638a05\"\u003e\u003ccode\u003ece372dd\u003c/code\u003e\u003c/a\u003e 1.38.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/83c1dc799597a1d342caa9dc6476711c1086dde9\"\u003e\u003ccode\u003e83c1dc7\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003eTYPE_CHECKING\u003c/code\u003e guards in match statements (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1726\"\u003e#1726\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/41f6c01f71734513e6ac518d52e09fd905abae3d\"\u003e\u003ccode\u003e41f6c01\u003c/code\u003e\u003c/a\u003e fix docstubs not being generated for older python versions\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/b00fdc450d57f58202bf37d641be0014a86c4952\"\u003e\u003ccode\u003eb00fdc4\u003c/code\u003e\u003c/a\u003e add tests to ensure that docstubs for multiple python versions are correctly ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/c34d0449c5a53aedabd07707813a3b7b84556cb5\"\u003e\u003ccode\u003ec34d044\u003c/code\u003e\u003c/a\u003e fix language server crash on abstract setter with no parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/55769d6a28b348ff0aaa3cc5e0917f0823f70b3c\"\u003e\u003ccode\u003e55769d6\u003c/code\u003e\u003c/a\u003e fix crash generating docstubs for older python versions caused by breaking ch...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/c3d29bf0deef8d16c4df8aa004651d1230c3e743\"\u003e\u003ccode\u003ec3d29bf\u003c/code\u003e\u003c/a\u003e fuck bash worst language ever\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/4bf506e4d15144c33f6ee03deeb72af9e830e17c\"\u003e\u003ccode\u003e4bf506e\u003c/code\u003e\u003c/a\u003e update links to docify repo\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/bc0955b639d6842812a83b6094538c1c84b5a6c4\"\u003e\u003ccode\u003ebc0955b\u003c/code\u003e\u003c/a\u003e update \u003ccode\u003egenerate_docstubs.py\u003c/code\u003e script to use the new docify multithreaded mode\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/a66be176971051dad271284e3e72d30fce0e8430\"\u003e\u003ccode\u003ea66be17\u003c/code\u003e\u003c/a\u003e bump python dependencies\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/detachhead/basedpyright/compare/v1.36.2...v1.38.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beautifulsoup4` from 4.13.4 to 4.14.3\n\nUpdates `billiard` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/billiard/releases\"\u003ebilliard's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/439\"\u003ecelery/billiard#439\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/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.3...v4.2.4\"\u003ehttps://github.com/celery/billiard/compare/v4.2.3...v4.2.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/436\"\u003ecelery/billiard#436\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/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.2...v4.2.3\"\u003ehttps://github.com/celery/billiard/compare/v4.2.2...v4.2.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/celery/billiard/blob/main/CHANGES.txt\"\u003ebilliard's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.4 - 2025-11-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.2.3 - 2025-11-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\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/celery/billiard/commit/69c2f296c2b36622a90c548f26c940712cb9a1df\"\u003e\u003ccode\u003e69c2f29\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/973c773fee4ccd1ab1151d0801905176b284075d\"\u003e\u003ccode\u003e973c773\u003c/code\u003e\u003c/a\u003e Eliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/51153949934c247ac23de990eee4073adcf08083\"\u003e\u003ccode\u003e5115394\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/437\"\u003e#437\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/e8f51d1995cf251787001683dbf443098d8b0ed7\"\u003e\u003ccode\u003ee8f51d1\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/8603172ab818f5069dd191dfaa3eb0a7653c6dda\"\u003e\u003ccode\u003e8603172\u003c/code\u003e\u003c/a\u003e Ensure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/849a3e8414cae0ba953d7c164129c1320e2a241d\"\u003e\u003ccode\u003e849a3e8\u003c/code\u003e\u003c/a\u003e Bump github...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1518","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1518","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1518/packages"}},{"old_version":"2.1.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2026-02-16T18:24:21.000Z","version_change":"2.1.0 → 2.4.0","issue":{"uuid":"3949032493","node_id":"PR_kwDOPrR8PM7EKmEP","number":1511,"state":"open","title":"deps(python)(deps): bump the python-dependencies group across 1 directory with 142 updates","user":"dependabot[bot]","labels":["dependencies","python","priority: high","security"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":10,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2026-02-16T18:24:21.000Z","updated_at":"2026-02-16T18:25:34.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(python)(deps): bump","group_name":"python-dependencies","update_count":142,"packages":[{"name":"aiodns","old_version":"3.2.0","new_version":"3.6.1","repository_url":"https://github.com/saghul/aiodns"},{"name":"aiohttp-retry","old_version":"2.8.3","new_version":"2.9.1","repository_url":"https://github.com/inyutin/aiohttp_retry"},{"name":"anthropic","old_version":"0.75.0","new_version":"0.79.0","repository_url":"https://github.com/anthropics/anthropic-sdk-python"},{"name":"apispec","old_version":"6.7.1","new_version":"6.9.0","repository_url":"https://github.com/marshmallow-code/apispec"},{"name":"apispec-webframeworks","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/marshmallow-code/apispec-webframeworks"},{"name":"asgiref","old_version":"3.9.2","new_version":"3.11.1","repository_url":"https://github.com/django/asgiref"},{"name":"asttokens","old_version":"3.0.0","new_version":"3.0.1","repository_url":"https://github.com/gristlabs/asttokens"},{"name":"authlib","old_version":"1.6.5","new_version":"1.6.8","repository_url":"https://github.com/authlib/authlib"},{"name":"bandit","old_version":"1.9.2","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"basedpyright","old_version":"1.36.2","new_version":"1.38.0","repository_url":"https://github.com/detachhead/basedpyright"},{"name":"beautifulsoup4","old_version":"4.13.4","new_version":"4.14.3"},{"name":"billiard","old_version":"4.2.2","new_version":"4.2.4","repository_url":"https://github.com/celery/billiard"},{"name":"cachecontrol","old_version":"0.14.3","new_version":"0.14.4","repository_url":"https://github.com/psf/cachecontrol"},{"name":"cachetools","old_version":"5.5.0","new_version":"5.5.2","repository_url":"https://github.com/tkem/cachetools"},{"name":"celery","old_version":"5.5.3","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"click","old_version":"8.1.8","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"coverage","old_version":"7.13.1","new_version":"7.13.4","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"cryptography","old_version":"46.0.3","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"deprecated","old_version":"1.2.18","new_version":"1.3.1","repository_url":"https://github.com/laurent-laporte-pro/deprecated"},{"name":"dnspython","old_version":"2.6.1","new_version":"2.8.0","repository_url":"https://github.com/rthalley/dnspython"},{"name":"email-validator","old_version":"2.2.0","new_version":"2.3.0","repository_url":"https://github.com/JoshData/python-email-validator"},{"name":"fastapi","old_version":"0.127.0","new_version":"0.129.0","repository_url":"https://github.com/fastapi/fastapi"},{"name":"filelock","old_version":"3.20.1","new_version":"3.24.2","repository_url":"https://github.com/tox-dev/py-filelock"},{"name":"flask-cors","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/corydolphin/flask-cors"},{"name":"fonttools","old_version":"4.60.2","new_version":"4.61.1","repository_url":"https://github.com/fonttools/fonttools"},{"name":"frozenlist","old_version":"1.7.0","new_version":"1.8.0","repository_url":"https://github.com/aio-libs/frozenlist"},{"name":"googleapis-common-protos","old_version":"1.59.1","new_version":"1.72.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"greenlet","old_version":"3.3.0","new_version":"3.3.1","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"grpcio","old_version":"1.75.1","new_version":"1.78.0","repository_url":"https://github.com/grpc/grpc"},{"name":"httpx","old_version":"0.27.0","new_version":"0.28.1","repository_url":"https://github.com/encode/httpx"},{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"iniconfig","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/pytest-dev/iniconfig"},{"name":"jiter","old_version":"0.12.0","new_version":"0.13.0","repository_url":"https://github.com/pydantic/jiter"},{"name":"joblib","old_version":"1.5.2","new_version":"1.5.3","repository_url":"https://github.com/joblib/joblib"},{"name":"jsonschema","old_version":"4.25.1","new_version":"4.26.0","repository_url":"https://github.com/python-jsonschema/jsonschema"},{"name":"kombu","old_version":"5.5.4","new_version":"5.6.2","repository_url":"https://github.com/celery/kombu"},{"name":"langchain","old_version":"1.2.2","new_version":"1.2.10","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-anthropic","old_version":"1.3.0","new_version":"1.3.3","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-core","old_version":"1.2.6","new_version":"1.2.13","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langchain-openai","old_version":"1.1.7","new_version":"1.1.9","repository_url":"https://github.com/langchain-ai/langchain"},{"name":"langgraph","old_version":"1.0.5","new_version":"1.0.8","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-prebuilt","old_version":"1.0.5","new_version":"1.0.7","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langgraph-sdk","old_version":"0.3.1","new_version":"0.3.6","repository_url":"https://github.com/langchain-ai/langgraph"},{"name":"langsmith","old_version":"0.6.1","new_version":"0.7.3","repository_url":"https://github.com/langchain-ai/langsmith-sdk"},{"name":"limits","old_version":"5.6.0","new_version":"5.8.0","repository_url":"https://github.com/alisaifee/limits"},{"name":"lxml","old_version":"6.0.0","new_version":"6.0.2","repository_url":"https://github.com/lxml/lxml"},{"name":"markdown","old_version":"3.7","new_version":"3.10.2","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"matplotlib","old_version":"3.8.4","new_version":"3.10.8","repository_url":"https://github.com/matplotlib/matplotlib"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"multidict","old_version":"6.6.4","new_version":"6.7.1","repository_url":"https://github.com/aio-libs/multidict"},{"name":"nodejs-wheel-binaries","old_version":"24.12.0","new_version":"24.13.1","repository_url":"https://github.com/njzjz/nodejs-wheel"},{"name":"opentelemetry-api","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-common","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-grpc","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-exporter-otlp-proto-http","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-instrumentation","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-asgi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-dbapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-fastapi","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-httpx","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-logging","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-psycopg2","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-redis","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-instrumentation-sqlalchemy","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"opentelemetry-proto","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-sdk","old_version":"1.21.0","new_version":"1.39.1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-semantic-conventions","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python"},{"name":"opentelemetry-util-http","old_version":"0.42b0","new_version":"0.60b1","repository_url":"https://github.com/open-telemetry/opentelemetry-python-contrib"},{"name":"orjson","old_version":"3.11.3","new_version":"3.11.7","repository_url":"https://github.com/ijl/orjson"},{"name":"ormsgpack","old_version":"1.12.1","new_version":"1.12.2","repository_url":"https://github.com/ormsgpack/ormsgpack"},{"name":"pandas","old_version":"2.2.3","new_version":"2.3.3","repository_url":"https://github.com/pandas-dev/pandas"},{"name":"parso","old_version":"0.8.5","new_version":"0.8.6","repository_url":"https://github.com/davidhalter/parso"},{"name":"phonenumbers","old_version":"8.13.50","new_version":"8.13.55","repository_url":"https://github.com/daviddrysdale/python-phonenumbers"},{"name":"pillow","old_version":"12.1.0","new_version":"12.1.1","repository_url":"https://github.com/python-pillow/Pillow"},{"name":"platformdirs","old_version":"4.4.0","new_version":"4.9.2","repository_url":"https://github.com/tox-dev/platformdirs"},{"name":"playwright","old_version":"1.57.0","new_version":"1.58.0","repository_url":"https://github.com/microsoft/playwright-python"},{"name":"postgrest","old_version":"0.18.0","new_version":"0.19.3","repository_url":"https://github.com/supabase/supabase-py"},{"name":"prometheus-fastapi-instrumentator","old_version":"7.0.0","new_version":"7.1.0","repository_url":"https://github.com/trallnag/prometheus-fastapi-instrumentator"},{"name":"prometheus-client","old_version":"0.23.1","new_version":"0.24.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"propcache","old_version":"0.3.2","new_version":"0.4.1","repository_url":"https://github.com/aio-libs/propcache"},{"name":"psutil","old_version":"6.1.0","new_version":"6.1.1","repository_url":"https://github.com/giampaolo/psutil"},{"name":"pusher","old_version":"3.3.2","new_version":"3.3.3","repository_url":"https://github.com/pusher/pusher-http-python"},{"name":"pyasn1","old_version":"0.6.1","new_version":"0.6.2","repository_url":"https://github.com/pyasn1/pyasn1"},{"name":"pycares","old_version":"5.0.0","new_version":"5.0.1","repository_url":"https://github.com/saghul/pycares"},{"name":"pydantic","old_version":"2.9.2","new_version":"2.12.5","repository_url":"https://github.com/pydantic/pydantic"},{"name":"pydantic-settings","old_version":"2.12.0","new_version":"2.13.0","repository_url":"https://github.com/pydantic/pydantic-settings"},{"name":"pydantic-core","old_version":"2.23.4","new_version":"2.41.5","repository_url":"https://github.com/pydantic/pydantic-core"},{"name":"pyee","old_version":"13.0.0","new_version":"13.0.1","repository_url":"https://github.com/jfhbrook/pyee"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyparsing","old_version":"3.3.0","new_version":"3.3.2","repository_url":"https://github.com/pyparsing/pyparsing"},{"name":"python-dotenv","old_version":"1.0.1","new_version":"1.2.1","repository_url":"https://github.com/theskumar/python-dotenv"},{"name":"python-engineio","old_version":"4.12.3","new_version":"4.13.1","repository_url":"https://github.com/miguelgrinberg/python-engineio"},{"name":"python-json-logger","old_version":"3.2.1","new_version":"3.3.0","repository_url":"https://github.com/nhairs/python-json-logger"},{"name":"python-multipart","old_version":"0.0.20","new_version":"0.0.22","repository_url":"https://github.com/Kludex/python-multipart"},{"name":"python-socketio","old_version":"5.14.2","new_version":"5.16.1","repository_url":"https://github.com/miguelgrinberg/python-socketio"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"realtime","old_version":"2.5.3","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"redis","old_version":"5.2.1","new_version":"5.3.1","repository_url":"https://github.com/redis/redis-py"},{"name":"referencing","old_version":"0.36.2","new_version":"0.37.0","repository_url":"https://github.com/python-jsonschema/referencing"},{"name":"regex","old_version":"2024.9.11","new_version":"2024.11.6","repository_url":"https://github.com/mrabarnett/mrab-regex"},{"name":"rpds-py","old_version":"0.27.1","new_version":"0.30.0","repository_url":"https://github.com/crate-py/rpds"},{"name":"ruamel-yaml","old_version":"0.18.15","new_version":"0.19.1"},{"name":"ruamel-yaml-clib","old_version":"0.2.14","new_version":"0.2.15"},{"name":"ruff","old_version":"0.14.10","new_version":"0.15.1","repository_url":"https://github.com/astral-sh/ruff"},{"name":"safety-schemas","old_version":"0.0.16","new_version":"0.0.18","repository_url":"https://github.com/pyupio/safety_schemas"},{"name":"sendgrid","old_version":"6.11.0","new_version":"6.12.5","repository_url":"https://github.com/sendgrid/sendgrid-python"},{"name":"sentry-sdk","old_version":"2.19.2","new_version":"2.53.0","repository_url":"https://github.com/getsentry/sentry-python"},{"name":"soupsieve","old_version":"2.7","new_version":"2.8.3","repository_url":"https://github.com/facelessuser/soupsieve"},{"name":"sqlalchemy","old_version":"2.0.45","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"starlette","old_version":"0.50.0","new_version":"0.52.1","repository_url":"https://github.com/Kludex/starlette"},{"name":"storage3","old_version":"0.9.0","new_version":"0.12.2","repository_url":"https://github.com/supabase/supabase-py"},{"name":"stripe","old_version":"8.0.0","new_version":"8.11.0","repository_url":"https://github.com/stripe/stripe-python"},{"name":"supabase","old_version":"2.10.0","new_version":"2.28.0","repository_url":"https://github.com/supabase/supabase-py"},{"name":"supafunc","old_version":"0.7.0","new_version":"0.10.2","repository_url":"https://github.com/supabase/functions-py"},{"name":"tenacity","old_version":"9.1.2","new_version":"9.1.4","repository_url":"https://github.com/jd/tenacity"},{"name":"termcolor","old_version":"3.1.0","new_version":"3.3.0","repository_url":"https://github.com/termcolor/termcolor"},{"name":"tomli","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hukkin/tomli"},{"name":"tomlkit","old_version":"0.13.3","new_version":"0.14.0","repository_url":"https://github.com/sdispater/tomlkit"},{"name":"tornado","old_version":"6.5.2","new_version":"6.5.4","repository_url":"https://github.com/tornadoweb/tornado"},{"name":"tqdm","old_version":"4.67.1","new_version":"4.67.3","repository_url":"https://github.com/tqdm/tqdm"},{"name":"typer","old_version":"0.19.2","new_version":"0.23.1","repository_url":"https://github.com/fastapi/typer"},{"name":"typing-inspection","old_version":"0.4.1","new_version":"0.4.2","repository_url":"https://github.com/pydantic/typing-inspection"},{"name":"typing-extensions","old_version":"4.14.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"uuid-utils","old_version":"0.12.0","new_version":"0.14.0","repository_url":"https://github.com/aminalaee/uuid-utils"},{"name":"wcwidth","old_version":"0.2.14","new_version":"0.6.0","repository_url":"https://github.com/jquast/wcwidth"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"yarl","old_version":"1.17.1","new_version":"1.22.0","repository_url":"https://github.com/aio-libs/yarl"},{"name":"zipp","old_version":"3.20.2","new_version":"3.23.0","repository_url":"https://github.com/jaraco/zipp"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"mkdocs-git-revision-date-localized-plugin","old_version":"1.5.0","new_version":"1.5.1","repository_url":"https://github.com/timvink/mkdocs-git-revision-date-localized-plugin"},{"name":"pymdown-extensions","old_version":"10.20","new_version":"10.21","repository_url":"https://github.com/facelessuser/pymdown-extensions"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"pylint","old_version":"3.3.2","new_version":"3.3.9","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest-html","old_version":"4.1.1","new_version":"4.2.0","repository_url":"https://github.com/pytest-dev/pytest-html"},{"name":"faker","old_version":"33.1.0","new_version":"33.3.1","repository_url":"https://github.com/joke2k/faker"},{"name":"ipython","old_version":"8.18.1","new_version":"8.38.0","repository_url":"https://github.com/ipython/ipython"},{"name":"gitpython","old_version":"3.1.45","new_version":"3.1.46","repository_url":"https://github.com/gitpython-developers/GitPython"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-dependencies group with 142 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [aiodns](https://github.com/saghul/aiodns) | `3.2.0` | `3.6.1` |\n| [aiohttp-retry](https://github.com/inyutin/aiohttp_retry) | `2.8.3` | `2.9.1` |\n| [anthropic](https://github.com/anthropics/anthropic-sdk-python) | `0.75.0` | `0.79.0` |\n| [apispec](https://github.com/marshmallow-code/apispec) | `6.7.1` | `6.9.0` |\n| [apispec-webframeworks](https://github.com/marshmallow-code/apispec-webframeworks) | `1.1.0` | `1.2.0` |\n| [asgiref](https://github.com/django/asgiref) | `3.9.2` | `3.11.1` |\n| [asttokens](https://github.com/gristlabs/asttokens) | `3.0.0` | `3.0.1` |\n| [authlib](https://github.com/authlib/authlib) | `1.6.5` | `1.6.8` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.9.2` | `1.9.3` |\n| [basedpyright](https://github.com/detachhead/basedpyright) | `1.36.2` | `1.38.0` |\n| [beautifulsoup4](https://www.crummy.com/software/BeautifulSoup/bs4/) | `4.13.4` | `4.14.3` |\n| [billiard](https://github.com/celery/billiard) | `4.2.2` | `4.2.4` |\n| [cachecontrol](https://github.com/psf/cachecontrol) | `0.14.3` | `0.14.4` |\n| [cachetools](https://github.com/tkem/cachetools) | `5.5.0` | `5.5.2` |\n| [celery](https://github.com/celery/celery) | `5.5.3` | `5.6.2` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [click](https://github.com/pallets/click) | `8.1.8` | `8.3.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.13.1` | `7.13.4` |\n| [cryptography](https://github.com/pyca/cryptography) | `46.0.3` | `46.0.5` |\n| [deprecated](https://github.com/laurent-laporte-pro/deprecated) | `1.2.18` | `1.3.1` |\n| [dnspython](https://github.com/rthalley/dnspython) | `2.6.1` | `2.8.0` |\n| [email-validator](https://github.com/JoshData/python-email-validator) | `2.2.0` | `2.3.0` |\n| [fastapi](https://github.com/fastapi/fastapi) | `0.127.0` | `0.129.0` |\n| [filelock](https://github.com/tox-dev/py-filelock) | `3.20.1` | `3.24.2` |\n| [flask-cors](https://github.com/corydolphin/flask-cors) | `6.0.1` | `6.0.2` |\n| [fonttools](https://github.com/fonttools/fonttools) | `4.60.2` | `4.61.1` |\n| [frozenlist](https://github.com/aio-libs/frozenlist) | `1.7.0` | `1.8.0` |\n| [googleapis-common-protos](https://github.com/googleapis/google-cloud-python) | `1.59.1` | `1.72.0` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.3.0` | `3.3.1` |\n| [grpcio](https://github.com/grpc/grpc) | `1.75.1` | `1.78.0` |\n| [httpx](https://github.com/encode/httpx) | `0.27.0` | `0.28.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.1.0` | `2.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [iniconfig](https://github.com/pytest-dev/iniconfig) | `2.1.0` | `2.3.0` |\n| [jiter](https://github.com/pydantic/jiter) | `0.12.0` | `0.13.0` |\n| [joblib](https://github.com/joblib/joblib) | `1.5.2` | `1.5.3` |\n| [jsonschema](https://github.com/python-jsonschema/jsonschema) | `4.25.1` | `4.26.0` |\n| [kombu](https://github.com/celery/kombu) | `5.5.4` | `5.6.2` |\n| [langchain](https://github.com/langchain-ai/langchain) | `1.2.2` | `1.2.10` |\n| [langchain-anthropic](https://github.com/langchain-ai/langchain) | `1.3.0` | `1.3.3` |\n| [langchain-core](https://github.com/langchain-ai/langchain) | `1.2.6` | `1.2.13` |\n| [langchain-openai](https://github.com/langchain-ai/langchain) | `1.1.7` | `1.1.9` |\n| [langgraph](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.8` |\n| [langgraph-prebuilt](https://github.com/langchain-ai/langgraph) | `1.0.5` | `1.0.7` |\n| [langgraph-sdk](https://github.com/langchain-ai/langgraph) | `0.3.1` | `0.3.6` |\n| [langsmith](https://github.com/langchain-ai/langsmith-sdk) | `0.6.1` | `0.7.3` |\n| [limits](https://github.com/alisaifee/limits) | `5.6.0` | `5.8.0` |\n| [lxml](https://github.com/lxml/lxml) | `6.0.0` | `6.0.2` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.7` | `3.10.2` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [matplotlib](https://github.com/matplotlib/matplotlib) | `3.8.4` | `3.10.8` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [multidict](https://github.com/aio-libs/multidict) | `6.6.4` | `6.7.1` |\n| [nodejs-wheel-binaries](https://github.com/njzjz/nodejs-wheel) | `24.12.0` | `24.13.1` |\n| [opentelemetry-api](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-common](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-grpc](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-exporter-otlp-proto-http](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-instrumentation](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-asgi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-dbapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-fastapi](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-httpx](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-logging](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-psycopg2](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-redis](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-instrumentation-sqlalchemy](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [opentelemetry-proto](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-sdk](https://github.com/open-telemetry/opentelemetry-python) | `1.21.0` | `1.39.1` |\n| [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-python) | `0.42b0` | `0.60b1` |\n| [opentelemetry-util-http](https://github.com/open-telemetry/opentelemetry-python-contrib) | `0.42b0` | `0.60b1` |\n| [orjson](https://github.com/ijl/orjson) | `3.11.3` | `3.11.7` |\n| [ormsgpack](https://github.com/ormsgpack/ormsgpack) | `1.12.1` | `1.12.2` |\n| [pandas](https://github.com/pandas-dev/pandas) | `2.2.3` | `2.3.3` |\n| [parso](https://github.com/davidhalter/parso) | `0.8.5` | `0.8.6` |\n| [phonenumbers](https://github.com/daviddrysdale/python-phonenumbers) | `8.13.50` | `8.13.55` |\n| [pillow](https://github.com/python-pillow/Pillow) | `12.1.0` | `12.1.1` |\n| [platformdirs](https://github.com/tox-dev/platformdirs) | `4.4.0` | `4.9.2` |\n| [playwright](https://github.com/microsoft/playwright-python) | `1.57.0` | `1.58.0` |\n| [postgrest](https://github.com/supabase/supabase-py) | `0.18.0` | `0.19.3` |\n| [prometheus-fastapi-instrumentator](https://github.com/trallnag/prometheus-fastapi-instrumentator) | `7.0.0` | `7.1.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.23.1` | `0.24.1` |\n| [propcache](https://github.com/aio-libs/propcache) | `0.3.2` | `0.4.1` |\n| [psutil](https://github.com/giampaolo/psutil) | `6.1.0` | `6.1.1` |\n| [pusher](https://github.com/pusher/pusher-http-python) | `3.3.2` | `3.3.3` |\n| [pyasn1](https://github.com/pyasn1/pyasn1) | `0.6.1` | `0.6.2` |\n| [pycares](https://github.com/saghul/pycares) | `5.0.0` | `5.0.1` |\n| [pydantic](https://github.com/pydantic/pydantic) | `2.9.2` | `2.12.5` |\n| [pydantic-settings](https://github.com/pydantic/pydantic-settings) | `2.12.0` | `2.13.0` |\n| [pydantic-core](https://github.com/pydantic/pydantic-core) | `2.23.4` | `2.41.5` |\n| [pyee](https://github.com/jfhbrook/pyee) | `13.0.0` | `13.0.1` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyparsing](https://github.com/pyparsing/pyparsing) | `3.3.0` | `3.3.2` |\n| [python-dotenv](https://github.com/theskumar/python-dotenv) | `1.0.1` | `1.2.1` |\n| [python-engineio](https://github.com/miguelgrinberg/python-engineio) | `4.12.3` | `4.13.1` |\n| [python-json-logger](https://github.com/nhairs/python-json-logger) | `3.2.1` | `3.3.0` |\n| [python-multipart](https://github.com/Kludex/python-multipart) | `0.0.20` | `0.0.22` |\n| [python-socketio](https://github.com/miguelgrinberg/python-socketio) | `5.14.2` | `5.16.1` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [realtime](https://github.com/supabase/supabase-py) | `2.5.3` | `2.28.0` |\n| [redis](https://github.com/redis/redis-py) | `5.2.1` | `5.3.1` |\n| [referencing](https://github.com/python-jsonschema/referencing) | `0.36.2` | `0.37.0` |\n| [regex](https://github.com/mrabarnett/mrab-regex) | `2024.9.11` | `2024.11.6` |\n| [rpds-py](https://github.com/crate-py/rpds) | `0.27.1` | `0.30.0` |\n| ruamel-yaml | `0.18.15` | `0.19.1` |\n| ruamel-yaml-clib | `0.2.14` | `0.2.15` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.10` | `0.15.1` |\n| [safety-schemas](https://github.com/pyupio/safety_schemas) | `0.0.16` | `0.0.18` |\n| [sendgrid](https://github.com/sendgrid/sendgrid-python) | `6.11.0` | `6.12.5` |\n| [sentry-sdk](https://github.com/getsentry/sentry-python) | `2.19.2` | `2.53.0` |\n| [soupsieve](https://github.com/facelessuser/soupsieve) | `2.7` | `2.8.3` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.45` | `2.0.46` |\n| [starlette](https://github.com/Kludex/starlette) | `0.50.0` | `0.52.1` |\n| [storage3](https://github.com/supabase/supabase-py) | `0.9.0` | `0.12.2` |\n| [stripe](https://github.com/stripe/stripe-python) | `8.0.0` | `8.11.0` |\n| [supabase](https://github.com/supabase/supabase-py) | `2.10.0` | `2.28.0` |\n| [supafunc](https://github.com/supabase/functions-py) | `0.7.0` | `0.10.2` |\n| [tenacity](https://github.com/jd/tenacity) | `9.1.2` | `9.1.4` |\n| [termcolor](https://github.com/termcolor/termcolor) | `3.1.0` | `3.3.0` |\n| [tomli](https://github.com/hukkin/tomli) | `2.3.0` | `2.4.0` |\n| [tomlkit](https://github.com/sdispater/tomlkit) | `0.13.3` | `0.14.0` |\n| [tornado](https://github.com/tornadoweb/tornado) | `6.5.2` | `6.5.4` |\n| [tqdm](https://github.com/tqdm/tqdm) | `4.67.1` | `4.67.3` |\n| [typer](https://github.com/fastapi/typer) | `0.19.2` | `0.23.1` |\n| [typing-inspection](https://github.com/pydantic/typing-inspection) | `0.4.1` | `0.4.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.1` | `4.15.0` |\n| [uuid-utils](https://github.com/aminalaee/uuid-utils) | `0.12.0` | `0.14.0` |\n| [wcwidth](https://github.com/jquast/wcwidth) | `0.2.14` | `0.6.0` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.5` |\n| [yarl](https://github.com/aio-libs/yarl) | `1.17.1` | `1.22.0` |\n| [zipp](https://github.com/jaraco/zipp) | `3.20.2` | `3.23.0` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [mkdocs-git-revision-date-localized-plugin](https://github.com/timvink/mkdocs-git-revision-date-localized-plugin) | `1.5.0` | `1.5.1` |\n| [pymdown-extensions](https://github.com/facelessuser/pymdown-extensions) | `10.20` | `10.21` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `3.3.2` | `3.3.9` |\n| [pytest-html](https://github.com/pytest-dev/pytest-html) | `4.1.1` | `4.2.0` |\n| [faker](https://github.com/joke2k/faker) | `33.1.0` | `33.3.1` |\n| [ipython](https://github.com/ipython/ipython) | `8.18.1` | `8.38.0` |\n| [gitpython](https://github.com/gitpython-developers/GitPython) | `3.1.45` | `3.1.46` |\n\n\nUpdates `aiodns` from 3.2.0 to 3.6.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/aio-libs/aiodns/blob/master/ChangeLog\"\u003eaiodns's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.6.1\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePin pycares to \u0026lt; 5\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.6.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003ePrevents resolver from being garbage collected while queries are in progress\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eSocket callback optimizations (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/172\"\u003e#172\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved performance for socket state handling\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed RTD links (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/176\"\u003e#176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdded Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.9.0 to 4.11.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/186\"\u003e#186\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/194\"\u003e#194\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 1.0.0 to 1.2.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/181\"\u003e#181\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/196\"\u003e#196\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.2.1 to 7.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/193\"\u003e#193\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.4.0 to 8.4.2 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/171\"\u003e#171\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/190\"\u003e#190\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.16.0 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/170\"\u003e#170\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/179\"\u003e#179\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/185\"\u003e#185\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/195\"\u003e#195\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/197\"\u003e#197\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped uvloop from 0.21.0 to 0.22.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/202\"\u003e#202\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped winloop from 0.1.8 to 0.3.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/182\"\u003e#182\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/183\"\u003e#183\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/184\"\u003e#184\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/187\"\u003e#187\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/200\"\u003e#200\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/201\"\u003e#201\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/203\"\u003e#203\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/setup-python from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/199\"\u003e#199\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/checkout from 4 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/188\"\u003e#188\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.5.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded explicit close method (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/166\"\u003e#166\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eAllows proper cleanup of resources on demand\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eFixed return type signature for CNAME and SOA records (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/162\"\u003e#162\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eCorrected type annotations for better type checking\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImproved Windows event loop documentation (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/163\"\u003e#163\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eProvided more accurate information on supported event loops on Windows\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eAdded pre-commit configuration with ruff (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/152\"\u003e#152\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved code quality and consistency\u003c/li\u003e\n\u003cli\u003eReformatted code and normalized end-of-line characters (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/155\"\u003e#155\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eUpdated dependencies\n\u003cul\u003e\n\u003cli\u003eBumped pycares from 4.8.0 to 4.9.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/168\"\u003e#168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-asyncio from 0.26.0 to 1.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest-cov from 6.1.1 to 6.2.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/164\"\u003e#164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped pytest from 8.3.5 to 8.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/160\"\u003e#160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped mypy from 1.15.0 to 1.16.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/158\"\u003e#158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBumped dependabot/fetch-metadata from 2.3.0 to 2.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e3.4.0\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdded fallback to \u003ccode\u003esock_state_cb\u003c/code\u003e if \u003ccode\u003eevent_thread\u003c/code\u003e creation fails (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/151\"\u003e#151\u003c/a\u003e)\n\u003cul\u003e\n\u003cli\u003eImproved reliability on systems with exhausted inotify watches\u003c/li\u003e\n\u003cli\u003eImplemented transparent fallback mechanism to ensure DNS resolution continues to work\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003eImplemented strict typing (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/138\"\u003e#138\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/aio-libs/aiodns/commit/1067970f92bc386b8b04469e83287e140e39c562\"\u003e\u003ccode\u003e1067970\u003c/code\u003e\u003c/a\u003e Release 3.6.1 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/a85b558b71cf9464a4c876f57490224ee98e3829\"\u003e\u003ccode\u003ea85b558\u003c/code\u003e\u003c/a\u003e build: prevent incompatible pycares versions (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/215\"\u003e#215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/6d63e75848ec975c51667c6c3fd115f27199716f\"\u003e\u003ccode\u003e6d63e75\u003c/code\u003e\u003c/a\u003e Bump winloop from 0.3.1 to 0.4.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/210\"\u003e#210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/be007e21337ca638e4ee987d8a3c91ca31fd8211\"\u003e\u003ccode\u003ebe007e2\u003c/code\u003e\u003c/a\u003e Release 3.6.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/213\"\u003e#213\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/4cb8ab83bb21b7bbf152b9ca71baf2c74427fc9d\"\u003e\u003ccode\u003e4cb8ab8\u003c/code\u003e\u003c/a\u003e Fix resolver garbage collection during pending queries (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/211\"\u003e#211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/e088cf48f6a30006e0545f8a4794210d3d99779f\"\u003e\u003ccode\u003ee088cf4\u003c/code\u003e\u003c/a\u003e Add Python 3.14 to the CI (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/23dc7727637bedb972d91614ee73922ff84d4d1a\"\u003e\u003ccode\u003e23dc772\u003c/code\u003e\u003c/a\u003e Bump actions/download-artifact from 4.3.0 to 6.0.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/205\"\u003e#205\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/3a1bddf5dec8e79af7690d6caffec84746e096e4\"\u003e\u003ccode\u003e3a1bddf\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/208\"\u003e#208\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/b57721e1267c614f329eb36eb700ca2f1468446c\"\u003e\u003ccode\u003eb57721e\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.18.2 to 1.19.0 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/207\"\u003e#207\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/aio-libs/aiodns/commit/ac6803818ad533749bedc9e11b691da0fe4bbe85\"\u003e\u003ccode\u003eac68038\u003c/code\u003e\u003c/a\u003e Bump actions/upload-artifact from 4 to 5 (\u003ca href=\"https://redirect.github.com/saghul/aiodns/issues/204\"\u003e#204\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/saghul/aiodns/compare/v3.2.0...v3.6.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `aiohttp-retry` from 2.8.3 to 2.9.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/inyutin/aiohttp_retry/releases\"\u003eaiohttp-retry's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.9.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd tests init file by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/106\"\u003einyutin/aiohttp_retry#106\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix the client sometimes would not retry by \u003ca href=\"https://github.com/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\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/Pandede\"\u003e\u003ccode\u003e@​Pandede\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/109\"\u003einyutin/aiohttp_retry#109\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.9.0...v2.9.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev2.9.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003ch3\u003eFeature\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRetry based on HTTP methods by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/103\"\u003einyutin/aiohttp_retry#103\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003erefactor: _RequestContext._do_request() by \u003ca href=\"https://github.com/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd ruff by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/99\"\u003einyutin/aiohttp_retry#99\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove code-coverage by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/100\"\u003einyutin/aiohttp_retry#100\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on python packages up to 3.13 by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/101\"\u003einyutin/aiohttp_retry#101\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix typo detected by codespell + add codespell workflow to avoid typos sneaking in by \u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eImprove documentation a little bit by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/102\"\u003einyutin/aiohttp_retry#102\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate ci dependencies by \u003ca href=\"https://github.com/inyutin\"\u003e\u003ccode\u003e@​inyutin\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/104\"\u003einyutin/aiohttp_retry#104\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/FilippoBoido\"\u003e\u003ccode\u003e@​FilippoBoido\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/85\"\u003einyutin/aiohttp_retry#85\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yarikoptic\"\u003e\u003ccode\u003e@​yarikoptic\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/pull/89\"\u003einyutin/aiohttp_retry#89\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.0\"\u003ehttps://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.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/inyutin/aiohttp_retry/commit/39b23915023dde0e0298b822de3d23960a5024e6\"\u003e\u003ccode\u003e39b2391\u003c/code\u003e\u003c/a\u003e Fix the client sometimes would not retry (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/4b406631f39963d7cda97086e89da6c740c56a6d\"\u003e\u003ccode\u003e4b40663\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/106\"\u003e#106\u003c/a\u003e from inyutin/tests-init-file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5007c9a469e46198cab7f7a1f944166ae82d045f\"\u003e\u003ccode\u003e5007c9a\u003c/code\u003e\u003c/a\u003e Add tests init file\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/75dbda9057f5cc7fe2d44ce6b60018381b84a08b\"\u003e\u003ccode\u003e75dbda9\u003c/code\u003e\u003c/a\u003e Add workflow_dispatch to publish package CI\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/f402cf6e0d59992945ae7833b903a8aef5a114b3\"\u003e\u003ccode\u003ef402cf6\u003c/code\u003e\u003c/a\u003e Package version update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/1dca2d92da43cc011175f4cbef2c64d7f166d111\"\u003e\u003ccode\u003e1dca2d9\u003c/code\u003e\u003c/a\u003e publish CI update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/5ea8c8eab3706617011b5ba7ff0a86cec5c4182a\"\u003e\u003ccode\u003e5ea8c8e\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/104\"\u003e#104\u003c/a\u003e from inyutin/dev-update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/87c03ed64383710d05350ec0ce2110950fb327ab\"\u003e\u003ccode\u003e87c03ed\u003c/code\u003e\u003c/a\u003e Encode pytest asyncio setting in pyproject.toml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/7af8295a7c99b1824c96f1a07f6cef1e1e64b4d7\"\u003e\u003ccode\u003e7af8295\u003c/code\u003e\u003c/a\u003e Update ci dependencies\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/inyutin/aiohttp_retry/commit/723961d3c2e841da8232b2da92e354c70624310c\"\u003e\u003ccode\u003e723961d\u003c/code\u003e\u003c/a\u003e Retry based on HTTP methods (\u003ca href=\"https://redirect.github.com/inyutin/aiohttp_retry/issues/103\"\u003e#103\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/inyutin/aiohttp_retry/compare/v2.8.3...v2.9.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `anthropic` from 0.75.0 to 0.79.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/releases\"\u003eanthropic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev0.79.0\u003c/h2\u003e\n\u003ch2\u003e0.79.0 (2026-02-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.78.0...v0.79.0\"\u003ev0.78.0...v0.79.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e enabling fast-mode in claude-opus-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/5953ba7b425ba113595de570bc8c639ff4dc4047\"\u003e5953ba7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epass speed parameter through in sync beta count_tokens (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1dd6119daca6de7a6eb730eb2494f368889ea050\"\u003e1dd6119\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.78.0\u003c/h2\u003e\n\u003ch2\u003e0.78.0 (2026-02-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.1...v0.78.0\"\u003ev0.77.1...v0.78.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Release Claude Opus 4.6, adaptive thinking, and other features (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3ef1529b45c55645646cc6043784f999fda088de\"\u003e3ef1529\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.77.1\u003c/h2\u003e\n\u003ch2\u003e0.77.1 (2026-02-03)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.0...v0.77.1\"\u003ev0.77.0...v0.77.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003estructured outputs:\u003c/strong\u003e send structured output beta header when format is omitted (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1158\"\u003e#1158\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/258494e2b814a6a096b01e50f83560b4cf4a98ad\"\u003e258494e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/aec4512305e8dce41df8ef0ab225f4939e099bcf\"\u003eaec4512\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev0.77.0\u003c/h2\u003e\n\u003ch2\u003e0.77.0 (2026-01-29)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.76.0...v0.77.0\"\u003ev0.76.0...v0.77.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Structured Outputs in the Messages API (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ad5667774ad2e7efd181bcfda03fab3ea50630b9\"\u003ead56677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e migrate sending message format in output_config rather than output_format (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/af405e473f7cf6091cb8e711264227b9b0508528\"\u003eaf405e4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add custom JSON encoder for extended type support (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7780e90bd2fe4c1116d59bc0ad543aa609fc643d\"\u003e7780e90\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse output_config for structured outputs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/82d669db652ed3d9aede61fd500fabb291b8f035\"\u003e82d669d\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/anthropics/anthropic-sdk-python/blob/main/CHANGELOG.md\"\u003eanthropic's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.79.0 (2026-02-07)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.78.0...v0.79.0\"\u003ev0.78.0...v0.79.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e enabling fast-mode in claude-opus-4-6 (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/5953ba7b425ba113595de570bc8c639ff4dc4047\"\u003e5953ba7\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003epass speed parameter through in sync beta count_tokens (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/1dd6119daca6de7a6eb730eb2494f368889ea050\"\u003e1dd6119\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.78.0 (2026-02-05)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.1...v0.78.0\"\u003ev0.77.1...v0.78.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e Release Claude Opus 4.6, adaptive thinking, and other features (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3ef1529b45c55645646cc6043784f999fda088de\"\u003e3ef1529\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.77.1 (2026-02-03)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.77.0...v0.77.1\"\u003ev0.77.0...v0.77.1\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003estructured outputs:\u003c/strong\u003e send structured output beta header when format is omitted (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1158\"\u003e#1158\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/258494e2b814a6a096b01e50f83560b4cf4a98ad\"\u003e258494e\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChores\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eremove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/aec4512305e8dce41df8ef0ab225f4939e099bcf\"\u003eaec4512\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.77.0 (2026-01-29)\u003c/h2\u003e\n\u003cp\u003eFull Changelog: \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.76.0...v0.77.0\"\u003ev0.76.0...v0.77.0\u003c/a\u003e\u003c/p\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e add support for Structured Outputs in the Messages API (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ad5667774ad2e7efd181bcfda03fab3ea50630b9\"\u003ead56677\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eapi:\u003c/strong\u003e migrate sending message format in output_config rather than output_format (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/af405e473f7cf6091cb8e711264227b9b0508528\"\u003eaf405e4\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e add custom JSON encoder for extended type support (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7780e90bd2fe4c1116d59bc0ad543aa609fc643d\"\u003e7780e90\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003euse output_config for structured outputs (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/82d669db652ed3d9aede61fd500fabb291b8f035\"\u003e82d669d\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eclient:\u003c/strong\u003e run formatter (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/2e4ff86d7b8bef8fe5c4b7e62bf47dfff79f0577\"\u003e2e4ff86\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eremove class causing breaking change (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1333\"\u003e#1333\u003c/a\u003e) (\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/81ee9533d14f9dc3753a4a1320ea744825b17e92\"\u003e81ee953\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/anthropics/anthropic-sdk-python/commit/cd1b39bf073c5482ed1c717f11147365eb68bbe9\"\u003e\u003ccode\u003ecd1b39b\u003c/code\u003e\u003c/a\u003e release: 0.79.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/fb52a6a09d09cde88913e36dadb03c335815d79a\"\u003e\u003ccode\u003efb52a6a\u003c/code\u003e\u003c/a\u003e fix: pass speed parameter through in sync beta count_tokens\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/b7c2df239d1256ee358501a2cd89bfe9ea129abe\"\u003e\u003ccode\u003eb7c2df2\u003c/code\u003e\u003c/a\u003e feat(api): enabling fast-mode in claude-opus-4-6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/7c42e4b04b170d88f39805b2b5956fa04a6e26d5\"\u003e\u003ccode\u003e7c42e4b\u003c/code\u003e\u003c/a\u003e Update CHANGELOG.md (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/f2b61ed11c36de713bdf6ec27cd502826965c882\"\u003e\u003ccode\u003ef2b61ed\u003c/code\u003e\u003c/a\u003e release: 0.78.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/a4a29cab92c50bebc636bf97cd3177719a1cd8df\"\u003e\u003ccode\u003ea4a29ca\u003c/code\u003e\u003c/a\u003e feat(api): manual updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/3955600d74eafef1eef5a66f460b54ed5deaf130\"\u003e\u003ccode\u003e3955600\u003c/code\u003e\u003c/a\u003e release: 0.77.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/eca8ddfb199a012ac8d5fd362757c4155afcb419\"\u003e\u003ccode\u003eeca8ddf\u003c/code\u003e\u003c/a\u003e fix(structured outputs): send structured output beta header when format is om...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/ee44c52131650fb17ee618d20d17f792d5071230\"\u003e\u003ccode\u003eee44c52\u003c/code\u003e\u003c/a\u003e chore: remove claude-code-review workflow (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/commit/9c485f6966e10ae0ea9eabb3a921d2ea8145a25b\"\u003e\u003ccode\u003e9c485f6\u003c/code\u003e\u003c/a\u003e release: 0.77.0 (\u003ca href=\"https://redirect.github.com/anthropics/anthropic-sdk-python/issues/1117\"\u003e#1117\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/anthropics/anthropic-sdk-python/compare/v0.75.0...v0.79.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec` from 6.7.1 to 6.9.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec/blob/dev/CHANGELOG.rst\"\u003eapispec's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.9.0 (2025-11-30)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSupport \u003ccode\u003eexamples\u003c/code\u003e property from field metadata (:pr:\u003ccode\u003e999\u003c/code\u003e).\nThanks :user:\u003ccode\u003eFlix6x\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eOther changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 (:pr:\u003ccode\u003e998\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.9 (:pr:\u003ccode\u003e994\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.4 (2025-09-22)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eSet \u003ccode\u003eTimeDelta\u003c/code\u003e field type according to \u003ccode\u003eserialization_type\u003c/code\u003e (:pr:\u003ccode\u003e990\u003c/code\u003e).\nThanks :user:\u003ccode\u003eLewisHaley\u003c/code\u003e for the PR.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.3 (2025-09-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e to \u003ccode\u003eFalse\u003c/code\u003e if\n\u003ccode\u003eunknown\u003c/code\u003e is not set (:pr:\u003ccode\u003e988\u003c/code\u003e).\nThanks :user:\u003ccode\u003emwgamble\u003c/code\u003e for reporting.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e: set \u003ccode\u003eadditionalProperties\u003c/code\u003e according to \u003ccode\u003eunknown\u003c/code\u003e\nvalue passed at schema instantiation, not only as \u003ccode\u003eMeta\u003c/code\u003e attribute\n(:pr:\u003ccode\u003e988\u003c/code\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.2 (2025-05-12)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003eMarshmallowPlugin\u003c/code\u003e doesn't override \u003ccode\u003eadditionalProperties\u003c/code\u003e explicitly\npassed to \u003ccode\u003efields.Dict\u003c/code\u003e (:pr:\u003ccode\u003e976\u003c/code\u003e).\nThanks :user:\u003ccode\u003e0x0400\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePerf improvement to \u003ccode\u003efilter_excluded_fields\u003c/code\u003e (:issue:\u003ccode\u003e972\u003c/code\u003e).\nThanks :user:\u003ccode\u003eallrob23\u003c/code\u003e for the PR.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.8.1 (2025-01-07)\u003c/p\u003e\n\u003chr /\u003e\n\u003cp\u003eBug fixes:\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/marshmallow-code/apispec/commit/58265d009f7cf027f22356a3fe9ea80813bcb36e\"\u003e\u003ccode\u003e58265d0\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/e25f2d4ab50855cfb9977dbbd167d1f67eae4f35\"\u003e\u003ccode\u003ee25f2d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/999\"\u003e#999\u003c/a\u003e from SeitaBV/feat/support-examples-property\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/eab75c737746e46c9002f1d59b1fcd3c46f5855c\"\u003e\u003ccode\u003eeab75c7\u003c/code\u003e\u003c/a\u003e feat: add test of metadata examples field\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/3a620c64b7506374cf8094deb0d786ee221e95a9\"\u003e\u003ccode\u003e3a620c6\u003c/code\u003e\u003c/a\u003e chore: AUTHORS.rst entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/0349ca265eda89f8e633aa3b09b0a8348afb6d11\"\u003e\u003ccode\u003e0349ca2\u003c/code\u003e\u003c/a\u003e docs: thank myself (a bit presumptuous, don't I think)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/8f74aa5bed1d3e65d6917674d2475701df275a53\"\u003e\u003ccode\u003e8f74aa5\u003c/code\u003e\u003c/a\u003e docs: fix typos\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/32f4f34a229674d274e17b50b57ffa4e9610df4c\"\u003e\u003ccode\u003e32f4f34\u003c/code\u003e\u003c/a\u003e docs: add changelog entry\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/867ae3b93254e822af1a18e83ebb6761aa07511b\"\u003e\u003ccode\u003e867ae3b\u003c/code\u003e\u003c/a\u003e feat: 'examples' is a supported property in OpenAPI 3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/40210699852a926c13a8d351e280c4a41070fc27\"\u003e\u003ccode\u003e4021069\u003c/code\u003e\u003c/a\u003e Update CHANGELOG\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec/commit/c10c481ee4300056e07c134272d13c44a3283f90\"\u003e\u003ccode\u003ec10c481\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/marshmallow-code/apispec/issues/998\"\u003e#998\u003c/a\u003e from marshmallow-code/py314\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec/compare/6.7.1...6.9.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `apispec-webframeworks` from 1.1.0 to 1.2.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/blob/main/CHANGELOG.rst\"\u003eapispec-webframeworks's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e1.2.0 (2024-09-16)\n++++++++++++++++++\u003c/p\u003e\n\u003cp\u003eFeatures:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eTornadoPlugin: Ensure consistent ordering for HTTP path keys\n(:pr:\u003ccode\u003e159\u003c/code\u003e). Thanks :user:\u003ccode\u003ebhperry\u003c/code\u003e for the PR.\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/marshmallow-code/apispec-webframeworks/commit/ebf43f149e685e3fe2abca2a1224b87e6c7415c1\"\u003e\u003ccode\u003eebf43f1\u003c/code\u003e\u003c/a\u003e Bump version and update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/e26e46369626b225eb2776075e1ad116f18dc6b5\"\u003e\u003ccode\u003ee26e463\u003c/code\u003e\u003c/a\u003e Consistent ordering for HTTP path keys (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/159\"\u003e#159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/abcb590d894572ab53865ad8f7d355f62c94cbf7\"\u003e\u003ccode\u003eabcb590\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/377fe6bd9aa8fc70d24dd65ef1d55016d8dd4fea\"\u003e\u003ccode\u003e377fe6b\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/157\"\u003e#157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/bda9880a0d91692162ca87dcb30f35c404d9afbd\"\u003e\u003ccode\u003ebda9880\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/156\"\u003e#156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/b5940fa3aa996eecce81dd536689aca3844c7580\"\u003e\u003ccode\u003eb5940fa\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/6c7f164bc58a9c647ecda3dd801bc75dab9f21d1\"\u003e\u003ccode\u003e6c7f164\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/154\"\u003e#154\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/7326a3f262caf41c3f64648cc231fdb9f6ac9d48\"\u003e\u003ccode\u003e7326a3f\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/153\"\u003e#153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/9da38826c861ea88f60f173e6f9bb212b522a22c\"\u003e\u003ccode\u003e9da3882\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/commit/1db8ed966be0e710a14e6518a86f6ce72981504f\"\u003e\u003ccode\u003e1db8ed9\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/marshmallow-code/apispec-webframeworks/issues/151\"\u003e#151\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/marshmallow-code/apispec-webframeworks/compare/1.1.0...1.2.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asgiref` from 3.9.2 to 3.11.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/django/asgiref/blob/main/CHANGELOG.txt\"\u003easgiref's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.11.1 (2026-02-03)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eSECURITY FIX CVE-2025-14550: There was a potential DoS vector for users of\nthe \u003ccode\u003easgiref.wsgi.WsgiToAsgi\u003c/code\u003e adapter. Malicious requests, including an unreasonably\nlarge number of values for the same header, could lead to resource exhaustion\nwhen building the WSGI environment.\u003c/p\u003e\n\u003cp\u003eTo mitigate this, the algorithm is changed to be more efficient, and\n\u003ccode\u003eWsgiToAsgi\u003c/code\u003e gains a new optional \u003ccode\u003eduplicate_header_limit\u003c/code\u003e parameter,\nwhich defaults to 100. This specifies the number of times a single header may\nbe repeated before the request is rejected as malformed.\u003c/p\u003e\n\u003cp\u003eYou may override \u003ccode\u003eduplicate_header_limit\u003c/code\u003e when configuring your application::\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003eapplication = WsgiToAsgi(wsgi_app, duplicate_header_limit=200)\n\u003c/code\u003e\u003c/pre\u003e\n\u003cp\u003eSet \u003ccode\u003eduplicate_header_limit=None\u003c/code\u003e if you wish to disable this check.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFixed a regression in 3.11.0 in \u003ccode\u003esync_to_async\u003c/code\u003e when wrapping a callable\nwith an attribute named \u003ccode\u003econtext\u003c/code\u003e. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/537\"\u003e#537\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.11.0 (2025-11-19)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ccode\u003esync_to_async\u003c/code\u003e gains a \u003ccode\u003econtext\u003c/code\u003e parameter, similar to those for\n\u003ccode\u003easyncio.create_task\u003c/code\u003e, \u003ccode\u003eTaskGroup\u003c/code\u003e \u0026amp;co, that can be used on Python 3.11+ to\ncontrol the context used by the underlying task.\u003c/p\u003e\n\u003cp\u003eThe parent context is already propagated by default but the additional\ncontrol is useful if multiple \u003ccode\u003esync_to_async\u003c/code\u003e calls need to share the same\ncontext, e.g. when used with \u003ccode\u003easyncio.gather()\u003c/code\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e3.10.0 (2025-10-05)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded AsyncSingleThreadContext context manager to ensure multiple AsyncToSync\ninvocations use the same thread. (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\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/django/asgiref/commit/d97a7339524c89798c510de6c142b663fe40400c\"\u003e\u003ccode\u003ed97a733\u003c/code\u003e\u003c/a\u003e Releasing 3.11.1.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/a50968a52a50a0bcb0f339ba41e8b52cbf74c604\"\u003e\u003ccode\u003ea50968a\u003c/code\u003e\u003c/a\u003e CVE-2025-14550: Fixed duplicate header handling in WsgiToAsgi.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/0fb85a4352b079ab8191cc593865bd99c987141f\"\u003e\u003ccode\u003e0fb85a4\u003c/code\u003e\u003c/a\u003e Fixed sync_to_async wrapping callables with attribute named \u003ccode\u003econtext\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2b28409ab83b3e4cf6fed9019403b71f8d7d1c51\"\u003e\u003ccode\u003e2b28409\u003c/code\u003e\u003c/a\u003e Updated Hypercorn homepage URL (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/539\"\u003e#539\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b7b15b20ddb51d1d8b6978165c0986686cd08c1d\"\u003e\u003ccode\u003eb7b15b2\u003c/code\u003e\u003c/a\u003e Releasing 3.11.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/901ee4f96db156f0b462690dd7c9f5aa99bcce03\"\u003e\u003ccode\u003e901ee4f\u003c/code\u003e\u003c/a\u003e Added a custom context parameter for the sync_to_async (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/536\"\u003e#536\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/2138f0317d79cedd065571447ae0a7571989550e\"\u003e\u003ccode\u003e2138f03\u003c/code\u003e\u003c/a\u003e Fixed typo in test file comment.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/f587b122af17bdba5749c30b96d2237bc1c2dfdf\"\u003e\u003ccode\u003ef587b12\u003c/code\u003e\u003c/a\u003e Releasing 3.10.0.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/django/asgiref/commit/b08087c3b6df811a0524585c4d4dafdc6b12c222\"\u003e\u003ccode\u003eb08087c\u003c/code\u003e\u003c/a\u003e Added AsyncSingleThreadContext (\u003ca href=\"https://redirect.github.com/django/asgiref/issues/511\"\u003e#511\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/django/asgiref/compare/3.9.2...3.11.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `asttokens` from 3.0.0 to 3.0.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/bdbf396fc0e006912ba82f1137dfd6b2d5aa9af2\"\u003e\u003ccode\u003ebdbf396\u003c/code\u003e\u003c/a\u003e Update mypy; add 3.14 to the CI; drop python 3.8 support (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/167\"\u003e#167\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/f859c055e8453650e1987c5aefaaec36582d3a07\"\u003e\u003ccode\u003ef859c05\u003c/code\u003e\u003c/a\u003e Add tests for astroid v2, v3, and v4 to the CI (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/166\"\u003e#166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/84ef059ba28d08816d3d881e363b9ed42bbeae3a\"\u003e\u003ccode\u003e84ef059\u003c/code\u003e\u003c/a\u003e Adapt asttokens for astroid 4.x (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/165\"\u003e#165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9db9335648659520c7c8453bc39550fa4f95d539\"\u003e\u003ccode\u003e9db9335\u003c/code\u003e\u003c/a\u003e Various links improvements (\u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/163\"\u003e#163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3371ebf7f48f6a731d409fffd6ba235e6a95d85b\"\u003e\u003ccode\u003e3371ebf\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/161\"\u003e#161\u003c/a\u003e from gristlabs/dependabot/pip/docs/requests-2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3a60115d3efdb01efc8a6442b59fdd0071518e70\"\u003e\u003ccode\u003e3a60115\u003c/code\u003e\u003c/a\u003e Bump requests from 2.32.2 to 2.32.4 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/584b51c6c084455ad4597886657783d1b661ddfa\"\u003e\u003ccode\u003e584b51c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/160\"\u003e#160\u003c/a\u003e from gristlabs/dependabot/pip/docs/urllib3-2.5.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/3e9d703323ce94987bf9e030bd010eae13fa15b4\"\u003e\u003ccode\u003e3e9d703\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.2.2 to 2.5.0 in /docs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/64d3f7c3637775fef832a9a9cdb78ec02da494e6\"\u003e\u003ccode\u003e64d3f7c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/gristlabs/asttokens/issues/158\"\u003e#158\u003c/a\u003e from gristlabs/dependabot/pip/docs/jinja2-3.1.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/gristlabs/asttokens/commit/9b5fb1abfb171cfb1f01c2d996cbd31e9d1f0660\"\u003e\u003ccode\u003e9b5fb1a\u003c/code\u003e\u003c/a\u003e Bump jinja2 from 3.1.4 to 3.1.6 in /docs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/gristlabs/asttokens/compare/v3.0.0...v3.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `authlib` from 1.6.5 to 1.6.8\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/authlib/authlib/releases\"\u003eauthlib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.6.7\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.6...v1.6.7\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003eSet supported algorithms for the default \u003ccode\u003ejwt\u003c/code\u003e instance.\u003c/p\u003e\n\u003ch2\u003ev1.6.6\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003efix(ClientAuth): fix incorrect signature when Content-Type is x-www-form-urlencoded by \u003ca href=\"https://github.com/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable by \u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter. by \u003ca href=\"https://github.com/azmeuk\"\u003e\u003ccode\u003e@​azmeuk\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/844\"\u003eauthlib/authlib#844\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/shc261392\"\u003e\u003ccode\u003e@​shc261392\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/778\"\u003eauthlib/authlib#778\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/bendavis78\"\u003e\u003ccode\u003e@​bendavis78\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/authlib/authlib/pull/842\"\u003eauthlib/authlib#842\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\"\u003ehttps://github.com/authlib/authlib/compare/v1.6.5...v1.6.6\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/authlib/authlib/blob/main/docs/changelog.rst\"\u003eauthlib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eChangelog\u003c/h1\u003e\n\u003cp\u003e.. meta::\n:description: The full list of changes between each Authlib release.\u003c/p\u003e\n\u003cp\u003eHere you can see the full list of changes between each Authlib release.\u003c/p\u003e\n\u003ch2\u003eVersion 1.7.0\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eUnreleased\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eOpenID Connect RP-Initiated Logout 1.0 \u0026lt;https://openid.net/specs/openid-connect-rpinitiated-1_0.html\u0026gt;\u003c/code\u003e_.\nSee :ref:\u003ccode\u003especs/rpinitiated\u003c/code\u003e for details. :issue:\u003ccode\u003e500\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003ePer RFC 6749 Section 3.3, the \u003ccode\u003escope\u003c/code\u003e parameter is now optional at both\nauthorization and token endpoints. \u003ccode\u003eclient.get_allowed_scope()\u003c/code\u003e is called\nto determine the default scope when omitted. :issue:\u003ccode\u003e845\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eStop support for Python 3.9, start support Python 3.14. :pr:\u003ccode\u003e850\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eAuthorizationServerMetadata.validate()\u003c/code\u003e to compose with RFC extension classes.\u003c/li\u003e\n\u003cli\u003eFix \u003ccode\u003eexpires_at=0\u003c/code\u003e being incorrectly treated as \u003ccode\u003eNone\u003c/code\u003e. :issue:\u003ccode\u003e530\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eResourceProtector\u003c/code\u003e decorator to be used without parentheses. :issue:\u003ccode\u003e604\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eUpgrade Guide: :ref:\u003ccode\u003ejoserfc_upgrade\u003c/code\u003e.\u003c/p\u003e\n\u003ch2\u003eVersion 1.6.6\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eReleased on Dec 12, 2025\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eget_jwt_config\u003c/code\u003e takes a \u003ccode\u003eclient\u003c/code\u003e parameter, :pr:\u003ccode\u003e844\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eFix incorrect signature when \u003ccode\u003eContent-Type\u003c/code\u003e is x-www-form-urlencoded for OAuth 1.0 Client, :pr:\u003ccode\u003e778\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eexpires_in\u003c/code\u003e in \u003ccode\u003eOAuth2Token\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable, :pr:\u003ccode\u003e842\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eAlways track \u003ccode\u003estate\u003c/code\u003e in session for OAuth client integrations.\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/authlib/authlib/commit/a769f343ae8d43236448e3e74445980861812e82\"\u003e\u003ccode\u003ea769f34\u003c/code\u003e\u003c/a\u003e chore: release 1.6.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/84f3fa2965a189c16528329e8cfe41d094008588\"\u003e\u003ccode\u003e84f3fa2\u003c/code\u003e\u003c/a\u003e fix: add EdDSA to default jwt algorithms\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/38e872a3f5b97d2658507acc8762a4e18adaa50e\"\u003e\u003ccode\u003e38e872a\u003c/code\u003e\u003c/a\u003e chore: release 1.6.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/b87c32ed07b8ae7f805873e1c9cafd1016761df7\"\u003e\u003ccode\u003eb87c32e\u003c/code\u003e\u003c/a\u003e fix: remove \u0026quot;none\u0026quot; algorithm from default jwt instance\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/bb7a315befbad333faf9a23ef574d6e3134a6774\"\u003e\u003ccode\u003ebb7a315\u003c/code\u003e\u003c/a\u003e chore: release 1.6.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/0a423d4638bed1c0fe4597b2296a85c5bb59fba2\"\u003e\u003ccode\u003e0a423d4\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/844\"\u003e#844\u003c/a\u003e from azmeuk/806-get-jwt-config-client\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/2808378611dd6fb2532b189a9087877d8f0c0489\"\u003e\u003ccode\u003e2808378\u003c/code\u003e\u003c/a\u003e Merge commit from fork\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/714502a4738bc29f26eb245b0c66718d8536cdda\"\u003e\u003ccode\u003e714502a\u003c/code\u003e\u003c/a\u003e feat: get_jwt_config takes a client parameter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/260d04edee23d8470057ea659c16fb8a2c7b0dc2\"\u003e\u003ccode\u003e260d04e\u003c/code\u003e\u003c/a\u003e Fix: Use \u003ccode\u003eexpires_in\u003c/code\u003e when \u003ccode\u003eexpires_at\u003c/code\u003e is unparsable\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/authlib/authlib/commit/eb37124bbbec6ccbfba3699d8960f9710d330ad8\"\u003e\u003ccode\u003eeb37124\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/authlib/authlib/issues/778\"\u003e#778\u003c/a\u003e from shc261392/fix-httpx-oauth1-form-data-incorrect-s...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/authlib/authlib/compare/v1.6.5...v1.6.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `bandit` from 1.9.2 to 1.9.3\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.9.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/checkout from 5 to 6 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1334\"\u003ePyCQA/bandit#1334\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1335\"\u003ePyCQA/bandit#1335\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space by \u003ca href=\"https://github.com/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd check for hardcoded passwords in dicts. by \u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\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[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1341\"\u003ePyCQA/bandit#1341\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate tox tests for Python 3.10 by \u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.11.1 to 3.12.0 by \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1347\"\u003ePyCQA/bandit#1347\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLimit B614 to torch.load deserializers by \u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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/kfess\"\u003e\u003ccode\u003e@​kfess\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1337\"\u003ePyCQA/bandit#1337\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/alanverresen\"\u003e\u003ccode\u003e@​alanverresen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1338\"\u003ePyCQA/bandit#1338\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/willschlitzer\"\u003e\u003ccode\u003e@​willschlitzer\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1346\"\u003ePyCQA/bandit#1346\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dibussoc\"\u003e\u003ccode\u003e@​dibussoc\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1348\"\u003ePyCQA/bandit#1348\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.9.2...1.9.3\"\u003ehttps://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\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/bandit/commit/765f00d3f202f83f61d03f882f80a2d5142d81f8\"\u003e\u003ccode\u003e765f00d\u003c/code\u003e\u003c/a\u003e Limit B614 to torch.load deserializers (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1348\"\u003e#1348\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/06fbbab0df3374ffa8ef24c6f601b2d5e1d4d429\"\u003e\u003ccode\u003e06fbbab\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.11.1 to 3.12.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1347\"\u003e#1347\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/36d6f3c091d84dc547019d773ab6e63a1cbc23af\"\u003e\u003ccode\u003e36d6f3c\u003c/code\u003e\u003c/a\u003e Update tox tests for Python 3.10 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1346\"\u003e#1346\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/da0d33816ba5c5f8f72a380720ad054596867807\"\u003e\u003ccode\u003eda0d338\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1341\"\u003e#1341\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/649b9bdf87f4f9d850b29819b14b847bd3b8f970\"\u003e\u003ccode\u003e649b9bd\u003c/code\u003e\u003c/a\u003e Add check for hardcoded passwords in dicts. (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1338\"\u003e#1338\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/3c56109061524f5907cc4d475b7370bac47a451b\"\u003e\u003ccode\u003e3c56109\u003c/code\u003e\u003c/a\u003e Fix B608 to detect \u003ccode\u003eVALUES(\u003c/code\u003e without space (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1337\"\u003e#1337\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/b790ce22f0a69f53468c1755e9d37e6349a2c8c2\"\u003e\u003ccode\u003eb790ce2\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1335\"\u003e#1335\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/0b73bbe59642097050d5c698e55d13bae2c6b78c\"\u003e\u003ccode\u003e0b73bbe\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1334\"\u003e#1334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.9.2...1.9.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `basedpyright` from 1.36.2 to 1.38.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/db81e4db6cf73690fde8fa22d0847ff17b06b23c\"\u003e\u003ccode\u003edb81e4d\u003c/code\u003e\u003c/a\u003e 1.38.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/6b1d48e6ac6a9fb9361371b933a4eeca10aa3bc0\"\u003e\u003ccode\u003e6b1d48e\u003c/code\u003e\u003c/a\u003e fix: error message for pyright executable fallback (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1723\"\u003e#1723\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/49a0041a6c5bf2c5f2bc759fbefa54a8f5d4da8f\"\u003e\u003ccode\u003e49a0041\u003c/code\u003e\u003c/a\u003e add more quick fixes for specific error types (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1721\"\u003e#1721\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/eeca15f7aa21fbfa031370e0fd5c9d6934ba7df2\"\u003e\u003ccode\u003eeeca15f\u003c/code\u003e\u003c/a\u003e fix: don't comment out return types in stub generation (\u003ca href=\"https://redirect.github.com/detachhead/basedpyright/issues/1724\"\u003e#1724\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ba43b2d33259b4b576e2929a700b052f31d55334\"\u003e\u003ccode\u003eba43b2d\u003c/code\u003e\u003c/a\u003e show the default value from the implementation signature when displaying an o...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/ecea0a681818fc8b90a1314b7d2f844fef8f53c0\"\u003e\u003ccode\u003eecea0a6\u003c/code\u003e\u003c/a\u003e 1.37.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/df279750472a016fae05feaaa9d0824724ad00e4\"\u003e\u003ccode\u003edf27975\u003c/code\u003e\u003c/a\u003e update badge\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/176bfb108a17b6c5a61119c3ee3e2e5d6470c8ed\"\u003e\u003ccode\u003e176bfb1\u003c/code\u003e\u003c/a\u003e fix $schema being reported as unrecognized setting in config files\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/206627d635c13cda872dd665cc9dd67452707749\"\u003e\u003ccode\u003e206627d\u003c/code\u003e\u003c/a\u003e 1.37.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/DetachHead/basedpyright/commit/039f3be9c6d959ccfd54133b5ab3b1159d6763f6\"\u003e\u003ccode\u003e039f3be\u003c/code\u003e\u003c/a\u003e extract the infinite recursion prevention logic into a separate class since t...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/detachhead/basedpyright/compare/v1.36.2...v1.38.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beautifulsoup4` from 4.13.4 to 4.14.3\n\nUpdates `billiard` from 4.2.2 to 4.2.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/billiard/releases\"\u003ebilliard's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.2.4\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks by \u003ca href=\"https://github.com/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/439\"\u003ecelery/billiard#439\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/torarvid\"\u003e\u003ccode\u003e@​torarvid\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/438\"\u003ecelery/billiard#438\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.3...v4.2.4\"\u003ehttps://github.com/celery/billiard/compare/v4.2.3...v4.2.4\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev4.2.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/436\"\u003ecelery/billiard#436\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/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/billiard/pull/435\"\u003ecelery/billiard#435\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/billiard/compare/v4.2.2...v4.2.3\"\u003ehttps://github.com/celery/billiard/compare/v4.2.2...v4.2.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/celery/billiard/blob/main/CHANGES.txt\"\u003ebilliard's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.2.4 - 2025-11-30\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.2.3 - 2025-11-16\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure that task results are delivered during pool shutdown (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/435\"\u003e#435\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v4.2.3 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/436\"\u003e#436\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/celery/billiard/commit/69c2f296c2b36622a90c548f26c940712cb9a1df\"\u003e\u003ccode\u003e69c2f29\u003c/code\u003e\u003c/a\u003e Prepare for release: v4.2.4 (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/439\"\u003e#439\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/973c773fee4ccd1ab1151d0801905176b284075d\"\u003e\u003ccode\u003e973c773\u003c/code\u003e\u003c/a\u003e Eliminate usage of 'return' in 'finally' blocks (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/438\"\u003e#438\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/billiard/commit/51153949934c247ac23de990eee4073adcf08083\"\u003e\u003ccode\u003e5115394\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/celery/billiard/issues/437\"\u003e#437\u003c/a\u003e...\n\n_Description has been truncated_","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/1511","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/1511","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/1511/packages"}},{"old_version":"2.3.0","new_version":"2.4.0","update_type":"minor","path":"/requirements","pr_created_at":"2026-02-12T22:00:31.000Z","version_change":"2.3.0 → 2.4.0","issue":{"uuid":"3934239497","node_id":"PR_kwDOBwbUJs7DZ_Dm","number":149,"state":"closed","title":"Bump the all-dependencies group in /requirements with 38 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":"2026-02-12T22:53:59.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-12T22:00:31.000Z","updated_at":"2026-02-12T22:54:00.000Z","time_to_close":3208,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"all-dependencies","update_count":38,"packages":[{"name":"bleach","old_version":"6.0.0","new_version":"6.3.0","repository_url":"https://github.com/mozilla/bleach"},{"name":"celery","old_version":"5.4.0","new_version":"5.6.2","repository_url":"https://github.com/celery/celery"},{"name":"celery-redbeat","old_version":"2.2.0","new_version":"2.3.3","repository_url":"https://github.com/sibson/redbeat"},{"name":"cryptography","old_version":"42.0.4","new_version":"46.0.5","repository_url":"https://github.com/pyca/cryptography"},{"name":"dockerfile-parse","old_version":"2.0.0","new_version":"2.0.1","repository_url":"https://github.com/containerbuildsystem/dockerfile-parse"},{"name":"flask","old_version":"2.3.2","new_version":"2.3.3","repository_url":"https://github.com/pallets/flask"},{"name":"flask-admin","old_version":"1.6.1","new_version":"2.0.2","repository_url":"https://github.com/pallets-eco/flask-admin"},{"name":"flask-babel","old_version":"3.1.0","new_version":"4.0.0","repository_url":"https://github.com/python-babel/flask-babel"},{"name":"flask-debugtoolbar","old_version":"0.14.1","new_version":"0.16.0","repository_url":"https://github.com/pallets-eco/flask-debugtoolbar"},{"name":"flask-mail","old_version":"0.9.1","new_version":"0.10.0","repository_url":"https://github.com/pallets-eco/flask-mail"},{"name":"flask-migrate","old_version":"3.0.1","new_version":"4.1.0","repository_url":"https://github.com/miguelgrinberg/flask-migrate"},{"name":"flask-nav3","old_version":"0.7.0","new_version":"0.7.2","repository_url":"https://github.com/wtfo-guru/flask-nav3"},{"name":"flask-security-too","old_version":"5.3.3","new_version":"5.7.1","repository_url":"https://github.com/pallets-eco/flask-security"},{"name":"flask-sock","old_version":"0.6.0","new_version":"0.7.0","repository_url":"https://github.com/miguelgrinberg/flask-sock"},{"name":"flask-sqlalchemy","old_version":"2.5.1","new_version":"3.1.1","repository_url":"https://github.com/pallets-eco/flask-sqlalchemy"},{"name":"gunicorn","old_version":"23.0.0","new_version":"25.0.3","repository_url":"https://github.com/benoitc/gunicorn"},{"name":"hupper","old_version":"1.10.3","new_version":"1.12.1","repository_url":"https://github.com/Pylons/hupper"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"kubernetes","old_version":"30.1.0","new_version":"35.0.0","repository_url":"https://github.com/kubernetes-client/python"},{"name":"psycopg2","old_version":"2.9.6","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"py-consul","old_version":"1.5.1","new_version":"1.7.1","repository_url":"https://github.com/criteo-forks/py-consul"},{"name":"pygithub","old_version":"1.59.1","new_version":"2.8.1","repository_url":"https://github.com/pygithub/pygithub"},{"name":"python-dxf","old_version":"10.0.0","new_version":"12.1.1","repository_url":"https://github.com/davedoesdev/dxf"},{"name":"qrcode","old_version":"7.4.2","new_version":"8.2","repository_url":"https://github.com/lincolnloop/python-qrcode"},{"name":"redis","old_version":"3.5.3","new_version":"7.1.1","repository_url":"https://github.com/redis/redis-py"},{"name":"sentry-sdk","old_version":"2.6.0","new_version":"2.52.0"},{"name":"sqlalchemy","old_version":"1.4.48","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"sqlalchemy-continuum","old_version":"1.3.14","new_version":"1.6.0","repository_url":"https://github.com/kvesteri/sqlalchemy-continuum"},{"name":"typing-extensions","old_version":"4.7.1","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"unidecode","old_version":"1.2.0","new_version":"1.4.0","repository_url":"https://github.com/kmike/text-unidecode"},{"name":"urllib3","old_version":"2.2.2","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"bandit","old_version":"1.7.9","new_version":"1.9.3","repository_url":"https://github.com/PyCQA/bandit"},{"name":"black","old_version":"24.4.2","new_version":"26.1.0","repository_url":"https://github.com/psf/black"},{"name":"mypy","old_version":"1.11.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"pip-tools","old_version":"7.4.1","new_version":"7.5.3","repository_url":"https://github.com/jazzband/pip-tools"},{"name":"ruff","old_version":"0.5.1","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"types-pyyaml","old_version":"6.0.12.20240311","new_version":"6.0.12.20250915","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-requests","old_version":"2.32.0.20240712","new_version":"2.32.4.20260107","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":"/requirements","ecosystem":"pip"},"body":"Bumps the all-dependencies group in /requirements with 38 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [bleach](https://github.com/mozilla/bleach) | `6.0.0` | `6.3.0` |\n| [celery](https://github.com/celery/celery) | `5.4.0` | `5.6.2` |\n| [celery-redbeat](https://github.com/sibson/redbeat) | `2.2.0` | `2.3.3` |\n| [cryptography](https://github.com/pyca/cryptography) | `42.0.4` | `46.0.5` |\n| [dockerfile-parse](https://github.com/containerbuildsystem/dockerfile-parse) | `2.0.0` | `2.0.1` |\n| [flask](https://github.com/pallets/flask) | `2.3.2` | `2.3.3` |\n| [flask-admin](https://github.com/pallets-eco/flask-admin) | `1.6.1` | `2.0.2` |\n| [flask-babel](https://github.com/python-babel/flask-babel) | `3.1.0` | `4.0.0` |\n| [flask-debugtoolbar](https://github.com/pallets-eco/flask-debugtoolbar) | `0.14.1` | `0.16.0` |\n| [flask-mail](https://github.com/pallets-eco/flask-mail) | `0.9.1` | `0.10.0` |\n| [flask-migrate](https://github.com/miguelgrinberg/flask-migrate) | `3.0.1` | `4.1.0` |\n| [flask-nav3](https://github.com/wtfo-guru/flask-nav3) | `0.7.0` | `0.7.2` |\n| [flask-security-too](https://github.com/pallets-eco/flask-security) | `5.3.3` | `5.7.1` |\n| [flask-sock](https://github.com/miguelgrinberg/flask-sock) | `0.6.0` | `0.7.0` |\n| [flask-sqlalchemy](https://github.com/pallets-eco/flask-sqlalchemy) | `2.5.1` | `3.1.1` |\n| [gunicorn](https://github.com/benoitc/gunicorn) | `23.0.0` | `25.0.3` |\n| [hupper](https://github.com/Pylons/hupper) | `1.10.3` | `1.12.1` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [kubernetes](https://github.com/kubernetes-client/python) | `30.1.0` | `35.0.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.6` | `2.9.11` |\n| [py-consul](https://github.com/criteo-forks/py-consul) | `1.5.1` | `1.7.1` |\n| [pygithub](https://github.com/pygithub/pygithub) | `1.59.1` | `2.8.1` |\n| [python-dxf](https://github.com/davedoesdev/dxf) | `10.0.0` | `12.1.1` |\n| [qrcode](https://github.com/lincolnloop/python-qrcode) | `7.4.2` | `8.2` |\n| [redis](https://github.com/redis/redis-py) | `3.5.3` | `7.1.1` |\n| [sentry-sdk[flask]](https://github.com/getsentry/sentry-python) | `2.6.0` | `2.52.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `1.4.48` | `2.0.46` |\n| [sqlalchemy-continuum](https://github.com/kvesteri/sqlalchemy-continuum) | `1.3.14` | `1.6.0` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.7.1` | `4.15.0` |\n| [unidecode](https://github.com/kmike/text-unidecode) | `1.2.0` | `1.4.0` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.2.2` | `2.6.3` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.9` | `1.9.3` |\n| [black](https://github.com/psf/black) | `24.4.2` | `26.1.0` |\n| [mypy](https://github.com/python/mypy) | `1.11.0` | `1.19.1` |\n| [pip-tools](https://github.com/jazzband/pip-tools) | `7.4.1` | `7.5.3` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.5.1` | `0.15.0` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.20240311` | `6.0.12.20250915` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20240712` | `2.32.4.20260107` |\n\nUpdates `bleach` from 6.0.0 to 6.3.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/mozilla/bleach/blob/main/CHANGES\"\u003ebleach's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 6.3.0 (October 27th, 2025)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.9. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/756\"\u003e#756\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.14. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/758\"\u003e#758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix wbr handling. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/488\"\u003e#488\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 6.2.0 (October 29th, 2024)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.8. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/737\"\u003e#737\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.13. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/736\"\u003e#736\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRemove six depdenncy. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/618\"\u003e#618\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eUpdate known-good versions for tinycss2. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/732\"\u003e#732\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix additional \u0026lt; followed by characters and EOF issues. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 6.1.0 (October 6th, 2023)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBackwards incompatible changes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for Python 3.7. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/709\"\u003e#709\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cp\u003eNone\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.12. (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/710\"\u003e#710\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/mozilla/bleach/commit/5546d5dbce60d08ccb99d981778d74044d646d4e\"\u003e\u003ccode\u003e5546d5d\u003c/code\u003e\u003c/a\u003e chore: prep for 6.3.0 release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/88df3ff23fb2a43e174b3fdfe9191ef516de868a\"\u003e\u003ccode\u003e88df3ff\u003c/code\u003e\u003c/a\u003e chore: fix readthedocs\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/d8b2fb45b2606515c58787c223d6605c6c70868f\"\u003e\u003ccode\u003ed8b2fb4\u003c/code\u003e\u003c/a\u003e fix: fix wbr handling (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/488\"\u003e#488\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/55e48cedb20bda23940ab34753a1fb378d5d30b9\"\u003e\u003ccode\u003e55e48ce\u003c/code\u003e\u003c/a\u003e chore: add support for Python 3.14 (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/758\"\u003e#758\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/a4d6cddac6e338c3d6f84c755a5fcb32e9e18fba\"\u003e\u003ccode\u003ea4d6cdd\u003c/code\u003e\u003c/a\u003e chore: drop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/mozilla/bleach/issues/756\"\u003e#756\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/172d92faef543a83c6760c63c32749586cdd564b\"\u003e\u003ccode\u003e172d92f\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 5.6.0 to 6.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/df88612f2e9daf8f4ee23cf0e29b712d9d9147b6\"\u003e\u003ccode\u003edf88612\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 4.2.2 to 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/cbcf6b18d19aeb7777699f9385013d0a04052b68\"\u003e\u003ccode\u003ecbcf6b1\u003c/code\u003e\u003c/a\u003e Bump actions/cache from 4.2.3 to 4.3.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/d9aa7ef592d57dda56e26ba31d06e1b279c58eca\"\u003e\u003ccode\u003ed9aa7ef\u003c/code\u003e\u003c/a\u003e Switch from dependabot reviewers to CODEOWNERS\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/mozilla/bleach/commit/06f0f76cc68112bda3fa101d1730d5ba914d54a1\"\u003e\u003ccode\u003e06f0f76\u003c/code\u003e\u003c/a\u003e Update setuptools, wheel, and twine for devs\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/mozilla/bleach/compare/v6.0.0...v6.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `celery` from 5.4.0 to 5.6.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/celery/releases\"\u003ecelery's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev5.6.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix recursive WorkController instantiation in DjangoWorkerFixup + AttributeError when pool_cls is a string by \u003ca href=\"https://github.com/bruunotrindade\"\u003e\u003ccode\u003e@​bruunotrindade\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10045\"\u003ecelery/celery#10045\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBugfix: Revoked tasks now immediately update backend status to REVOKED by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9869\"\u003ecelery/celery#9869\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.2 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10049\"\u003ecelery/celery#10049\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/bruunotrindade\"\u003e\u003ccode\u003e@​bruunotrindade\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10045\"\u003ecelery/celery#10045\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/celery/compare/v5.6.1...v5.6.2\"\u003ehttps://github.com/celery/celery/compare/v5.6.1...v5.6.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.6.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix Redis Sentinel ACL authentication support by \u003ca href=\"https://github.com/anthonykuzmich7\"\u003e\u003ccode\u003e@​anthonykuzmich7\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10013\"\u003ecelery/celery#10013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Broker heartbeats not sent during graceful shutdown by \u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9986\"\u003ecelery/celery#9986\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs \u003ca href=\"https://redirect.github.com/celery/celery/issues/5410\"\u003e#5410\u003c/a\u003e -- Document confirm_publish broker transport option by \u003ca href=\"https://github.com/JaeHyuckSa\"\u003e\u003ccode\u003e@​JaeHyuckSa\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10016\"\u003ecelery/celery#10016\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eclose DB pools only in prefork mode by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10020\"\u003ecelery/celery#10020\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix: Avoid unnecessary Django database connection creation during cleanup by \u003ca href=\"https://github.com/snopoke\"\u003e\u003ccode\u003e@​snopoke\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10015\"\u003ecelery/celery#10015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ereliable prefork detection by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10023\"\u003ecelery/celery#10023\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebetter coverage by \u003ca href=\"https://github.com/petrprikryl\"\u003e\u003ccode\u003e@​petrprikryl\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10029\"\u003ecelery/celery#10029\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDocs: clarify \u003ccode\u003eresult_extended\u003c/code\u003e vs periodic task metadata and show \u003ccode\u003eheaders[\u0026quot;periodic_task_name\u0026quot;]\u003c/code\u003e example by \u003ca href=\"https://github.com/SpaceShaman\"\u003e\u003ccode\u003e@​SpaceShaman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10030\"\u003ecelery/celery#10030\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStop importing pytest_subtests by \u003ca href=\"https://github.com/cjwatson\"\u003e\u003ccode\u003e@​cjwatson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10032\"\u003ecelery/celery#10032\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eOnly use exceptiongroup backport for Python \u0026lt; 3.11 by \u003ca href=\"https://github.com/cjwatson\"\u003e\u003ccode\u003e@​cjwatson\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10033\"\u003ecelery/celery#10033\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.1 by \u003ca href=\"https://github.com/Nusnus\"\u003e\u003ccode\u003e@​Nusnus\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10037\"\u003ecelery/celery#10037\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/anthonykuzmich7\"\u003e\u003ccode\u003e@​anthonykuzmich7\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10013\"\u003ecelery/celery#10013\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/weetster\"\u003e\u003ccode\u003e@​weetster\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/9986\"\u003ecelery/celery#9986\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/JaeHyuckSa\"\u003e\u003ccode\u003e@​JaeHyuckSa\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10016\"\u003ecelery/celery#10016\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/snopoke\"\u003e\u003ccode\u003e@​snopoke\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10015\"\u003ecelery/celery#10015\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/SpaceShaman\"\u003e\u003ccode\u003e@​SpaceShaman\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/celery/celery/pull/10030\"\u003ecelery/celery#10030\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/celery/celery/compare/v5.6.0...v5.6.1\"\u003ehttps://github.com/celery/celery/compare/v5.6.0...v5.6.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003ev5.6.0\u003c/h2\u003e\n\u003cp\u003eCelery v5.6.0 is now available.\u003c/p\u003e\n\u003ch2\u003eKey Highlights\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://docs.celeryq.dev/en/stable/history/whatsnew-5.6.html\"\u003eWhat's new in Celery 5.6\u003c/a\u003e for a complete overview or read the main highlights below.\u003c/p\u003e\n\u003ch3\u003ePython 3.9 Minimum Version\u003c/h3\u003e\n\u003cp\u003eCelery 5.6.0 drops support for Python 3.8 (EOL). The minimum required Python version is now 3.9. Users still on Python 3.8 must upgrade their Python version before upgrading to Celery 5.6.0.\u003c/p\u003e\n\u003cp\u003eAdditionally, this release includes initial support for Python 3.14.\u003c/p\u003e\n\u003ch3\u003eSQS: Reverted to \u003ccode\u003epycurl\u003c/code\u003e from \u003ccode\u003eurllib3\u003c/code\u003e\u003c/h3\u003e\n\u003cp\u003eThe switch from \u003ccode\u003epycurl\u003c/code\u003e to \u003ccode\u003eurllib3\u003c/code\u003e for the SQS transport (introduced in Celery 5.5.0 via Kombu) has been reverted due to critical issues affecting SQS users.\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/celery/celery/blob/main/Changelog.rst\"\u003ecelery's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e5.6.2\u003c/h1\u003e\n\u003cp\u003e:release-date: 2026-01-04\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eWhat's Changed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Fix recursive WorkController instantiation in DjangoWorkerFixup + AttributeError when pool_cls is a string ([#10045](https://github.com/celery/celery/issues/10045))\n- Bugfix: Revoked tasks now immediately update backend status to REVOKED ([#9869](https://github.com/celery/celery/issues/9869))\n- Prepare for release: v5.6.2 ([#10049](https://github.com/celery/celery/issues/10049))\n\u003cp\u003e.. _version-5.6.1:\u003c/p\u003e\n\u003ch1\u003e5.6.1\u003c/h1\u003e\n\u003cp\u003e:release-date: 2025-12-29\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eWhat's Changed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix Redis Sentinel ACL authentication support (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10013\"\u003e#10013\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix: Broker heartbeats not sent during graceful shutdown (\u003ca href=\"https://redirect.github.com/celery/celery/issues/9986\"\u003e#9986\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003edocs \u003ca href=\"https://redirect.github.com/celery/celery/issues/5410\"\u003e#5410\u003c/a\u003e -- Document confirm_publish broker transport option (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10016\"\u003e#10016\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eclose DB pools only in prefork mode (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10020\"\u003e#10020\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix: Avoid unnecessary Django database connection creation during cleanup (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10015\"\u003e#10015\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ereliable prefork detection (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10023\"\u003e#10023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ebetter coverage (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10029\"\u003e#10029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDocs: clarify \u003ccode\u003eresult_extended\u003c/code\u003e vs periodic task metadata and show \u003ccode\u003eheaders[\u0026quot;periodic_task_name\u0026quot;]\u003c/code\u003e example (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10030\"\u003e#10030\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eStop importing pytest_subtests (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10032\"\u003e#10032\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eOnly use exceptiongroup backport for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10033\"\u003e#10033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePrepare for release: v5.6.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10037\"\u003e#10037\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _version-5.6.0:\u003c/p\u003e\n\u003ch1\u003e5.6.0\u003c/h1\u003e\n\u003cp\u003e:release-date: 2025-11-30\n:release-by: Tomer Nosrati\u003c/p\u003e\n\u003cp\u003eCelery v5.6.0 is now available.\u003c/p\u003e\n\u003cp\u003eKey Highlights\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\nSee :ref:`whatsnew-5.6` for a complete overview or read the main highlights below.\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/celery/celery/commit/6a43c846f183ef0cbade24f4b9a8f7a6ea113b44\"\u003e\u003ccode\u003e6a43c84\u003c/code\u003e\u003c/a\u003e Prepare for release: v5.6.2 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10049\"\u003e#10049\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/333a82f746734151c5cbe848916085455b0a3748\"\u003e\u003ccode\u003e333a82f\u003c/code\u003e\u003c/a\u003e Bugfix: Revoked tasks now immediately update backend status to REVOKED (\u003ca href=\"https://redirect.github.com/celery/celery/issues/9869\"\u003e#9869\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/9d6ab110d947270c4edf0b42454266d2954e653d\"\u003e\u003ccode\u003e9d6ab11\u003c/code\u003e\u003c/a\u003e Fix recursive WorkController instantiation in DjangoWorkerFixup + AttributeEr...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/21dbc73f81d2fae058de49e665afaa1cd92da5c0\"\u003e\u003ccode\u003e21dbc73\u003c/code\u003e\u003c/a\u003e Prepare for release: v5.6.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10037\"\u003e#10037\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/ba20bed7723c684d12ddd62d6a7c0c0d901b3351\"\u003e\u003ccode\u003eba20bed\u003c/code\u003e\u003c/a\u003e Only use exceptiongroup backport for Python \u0026lt; 3.11 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10033\"\u003e#10033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/21675299bc2d10c648448ec5221136e07c1eec1a\"\u003e\u003ccode\u003e2167529\u003c/code\u003e\u003c/a\u003e Stop importing pytest_subtests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/0527296acb1f1790788301d4395ba6d5ce2a9704\"\u003e\u003ccode\u003e0527296\u003c/code\u003e\u003c/a\u003e Bump google-cloud-firestore from 2.21.0 to 2.22.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/5f8659bdba4561796d66e938a1e2c71d4489562f\"\u003e\u003ccode\u003e5f8659b\u003c/code\u003e\u003c/a\u003e Clarify 'result_extended' setting usage in tasks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/f19db7008682c782d85e69b5ce736970491752ea\"\u003e\u003ccode\u003ef19db70\u003c/code\u003e\u003c/a\u003e Bump mypy from 1.19.0 to 1.19.1 (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10028\"\u003e#10028\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/celery/celery/commit/6da72bde60553a1c350eef1e17d834d004ed099d\"\u003e\u003ccode\u003e6da72bd\u003c/code\u003e\u003c/a\u003e better coverage (\u003ca href=\"https://redirect.github.com/celery/celery/issues/10029\"\u003e#10029\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/celery/celery/compare/v5.4.0...v5.6.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `celery-redbeat` from 2.2.0 to 2.3.3\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sibson/redbeat/blob/main/CHANGES.txt\"\u003ecelery-redbeat's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.3dev (unreleased)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python 3.8 and add CI coverage through Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.3 (2025-07-02)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd Python 3.12 support, thanks \u003ca href=\"https://github.com/AnkiHubSoftware\"\u003e\u003ccode\u003e@​AnkiHubSoftware\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, update RedBeatSchedulerEntry definitions for improved type safety and correctness, thanks \u003ca href=\"https://github.com/sotosapp\"\u003e\u003ccode\u003e@​sotosapp\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, Redbeat no longer updating tasks definitions on Redis \u003ca href=\"https://redirect.github.com/sibson/redbeat/issues/289\"\u003e#289\u003c/a\u003e, thanks \u003ca href=\"https://github.com/semoac\"\u003e\u003ccode\u003e@​semoac\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eci, fix testpypi publish by checking out source before version update\u003c/li\u003e\n\u003cli\u003etest, pin fakeredis\u0026lt;2.27.0 for Python 3.8 support\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0 (2025-02-23)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003ebugfix, allow disabling of lock with redbeat_lock_key = None, thanks \u003ca href=\"https://github.com/jscaria\"\u003e\u003ccode\u003e@​jscaria\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/molog\"\u003e\u003ccode\u003e@​molog\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/bertosantamaria\"\u003e\u003ccode\u003e@​bertosantamaria\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, track changes to primary in Sentinel, thanks \u003ca href=\"https://github.com/Niccolum\"\u003e\u003ccode\u003e@​Niccolum\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ebugfix, static entries honour last_run_at, thanks \u003ca href=\"https://github.com/kchamz\"\u003e\u003ccode\u003e@​kchamz\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edoc updates, thanks \u003ca href=\"https://github.com/miketheman\"\u003e\u003ccode\u003e@​miketheman\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cikay\"\u003e\u003ccode\u003e@​cikay\u003c/code\u003e\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/sibson/redbeat/commit/2b85c88951fdd2964610819c1a59e4914e4c205b\"\u003e\u003ccode\u003e2b85c88\u003c/code\u003e\u003c/a\u003e prepare for release of 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/3d107dd7cf5c310bcd05fd8ba76da622a0f84b13\"\u003e\u003ccode\u003e3d107dd\u003c/code\u003e\u003c/a\u003e update for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/30e812dd1a178dca02390c4f4a3e8fe79c43ca39\"\u003e\u003ccode\u003e30e812d\u003c/code\u003e\u003c/a\u003e makefile: add version target using grep for warning-free version check\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/1242fde248ed7aeebe7cd148f873977f0face2e8\"\u003e\u003ccode\u003e1242fde\u003c/code\u003e\u003c/a\u003e update changelog for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/f35e31cfb0f9c0cf6662821cc4d4d7ec1d45d144\"\u003e\u003ccode\u003ef35e31c\u003c/code\u003e\u003c/a\u003e ci: fetch full git history for pbr versioning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/acf82610cb0fab5caa3418c42efcfb4715686d2e\"\u003e\u003ccode\u003eacf8261\u003c/code\u003e\u003c/a\u003e build: switch to pbr for dynamic versioning and simplify workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/a317b5ff3a4f7b6508c8d91ae55f3ac736d646be\"\u003e\u003ccode\u003ea317b5f\u003c/code\u003e\u003c/a\u003e bump version for release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/5e185f63ba10458545ec4c8a91747006da65de63\"\u003e\u003ccode\u003e5e185f6\u003c/code\u003e\u003c/a\u003e ci: use .dev0.\u0026lt;githash\u0026gt; for testpypi version (PEP 440/PyPI compliant)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/f384d757f8f58ca2cd26d36c13dfb8971461d3de\"\u003e\u003ccode\u003ef384d75\u003c/code\u003e\u003c/a\u003e ci: ensure PEP 440 compliant version for testpypi with git hash\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/sibson/redbeat/commit/bfc520b778a0234815917e3aba472a27ffabc6f6\"\u003e\u003ccode\u003ebfc520b\u003c/code\u003e\u003c/a\u003e test: pin fakeredis\u0026lt;2.27.0 for Python 3.8 support (see comment)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/sibson/redbeat/compare/v2.2.0...v2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cryptography` from 42.0.4 to 46.0.5\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst\"\u003ecryptography's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e46.0.5 - 2026-02-10\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* An attacker could create a malicious public key that reveals portions of your\n  private key when using certain uncommon elliptic curves (binary curves).\n  This version now includes additional security checks to prevent this attack.\n  This issue only affects binary elliptic curves, which are rarely used in\n  real-world applications. Credit to **XlabAI Team of Tencent Xuanwu Lab and\n  Atuin Automated Vulnerability Discovery Engine** for reporting the issue.\n  **CVE-2026-26007**\n* Support for ``SECT*`` binary elliptic curves is deprecated and will be\n  removed in the next release.\n\u003cp\u003e.. v46-0-4:\u003c/p\u003e\n\u003cp\u003e46.0.4 - 2026-01-27\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eDropped support for win_arm64 wheels\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eUpdated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.5.5.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _v46-0-3:\u003c/p\u003e\n\u003cp\u003e46.0.3 - 2025-10-15\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Fixed compilation when using LibreSSL 4.2.0.\n\u003cp\u003e.. _v46-0-2:\u003c/p\u003e\n\u003cp\u003e46.0.2 - 2025-09-30\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdated Windows, macOS, and Linux wheels to be compiled with OpenSSL 3.5.4.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _v46-0-1:\u003c/p\u003e\n\u003cp\u003e46.0.1 - 2025-09-16\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n* Fixed an issue where users installing via ``pip`` on Python 3.14 development\n  versions would not properly install a dependency.\n* Fixed an issue building the free-threaded macOS 3.14 wheels.\n\u003cp\u003e.. _v46-0-0:\u003c/p\u003e\n\u003cp\u003e46.0.0 - 2025-09-16\u003cbr /\u003e\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eBACKWARDS INCOMPATIBLE:\u003c/strong\u003e Support for Python 3.7 has been removed.\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/pyca/cryptography/commit/06e120e682cb200e3f7050c02f0bcdac90c4c6ad\"\u003e\u003ccode\u003e06e120e\u003c/code\u003e\u003c/a\u003e bump version for 46.0.5 release (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14289\"\u003e#14289\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/0eebb9dbb6343d9bc1d91e5a2482ed4e054a6d8c\"\u003e\u003ccode\u003e0eebb9d\u003c/code\u003e\u003c/a\u003e EC check key on cofactor \u0026gt; 1 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14287\"\u003e#14287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/bedf6e186b814f69a3f54f51252c23a71d44ed2e\"\u003e\u003ccode\u003ebedf6e1\u003c/code\u003e\u003c/a\u003e fix openssl version on 46 branch (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14220\"\u003e#14220\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/e6f44fc8e6391f05d719fb9d369692325b87a471\"\u003e\u003ccode\u003ee6f44fc\u003c/code\u003e\u003c/a\u003e bump for 46.0.4 and drop win arm64 due to CI issues (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/14217\"\u003e#14217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/c0af4dd7b75921bbe9f1d41a03dbd4b64a9e3403\"\u003e\u003ccode\u003ec0af4dd\u003c/code\u003e\u003c/a\u003e release 46.0.3 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13681\"\u003e#13681\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/99efe5ad150a56efadafacaffd0e3ee319373904\"\u003e\u003ccode\u003e99efe5a\u003c/code\u003e\u003c/a\u003e bump version for 46.0.2 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13531\"\u003e#13531\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/e735cfc27502320101c130335c556394a125ba52\"\u003e\u003ccode\u003ee735cfc\u003c/code\u003e\u003c/a\u003e release 46.0.1 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13450\"\u003e#13450\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/4e457ffba43a6d87efc63c33041e2081438dd8a4\"\u003e\u003ccode\u003e4e457ff\u003c/code\u003e\u003c/a\u003e Explicitly specify python in mac uv build invocation (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13447\"\u003e#13447\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/2726efdb6d67f1c90cf9c6062d9fe051965586f8\"\u003e\u003ccode\u003e2726efd\u003c/code\u003e\u003c/a\u003e Depend on CFFI 2.0.0 or newer on Python \u0026gt; 3.8 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13448\"\u003e#13448\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyca/cryptography/commit/62230623d183706632c0eb7822c96ac95e3710a8\"\u003e\u003ccode\u003e6223062\u003c/code\u003e\u003c/a\u003e release 46.0.0 (\u003ca href=\"https://redirect.github.com/pyca/cryptography/issues/13446\"\u003e#13446\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyca/cryptography/compare/42.0.4...46.0.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dockerfile-parse` from 2.0.0 to 2.0.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/releases\"\u003edockerfile-parse's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003ch1\u003eImprovements\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eRemoval of python-six module\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/containerbuildsystem/dockerfile-parse/commit/3a4360f78e60ac72b6ffc627135fca27c180c4ad\"\u003e\u003ccode\u003e3a4360f\u003c/code\u003e\u003c/a\u003e Automatic commit of package [python-dockerfile-parse] release [2.0.1-1].\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/commit/7d0e60413dfd6cb7f6dbe2ecb841a8199f6a43a7\"\u003e\u003ccode\u003e7d0e604\u003c/code\u003e\u003c/a\u003e fix(pylint): address broad-exception-raised\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/commit/9cd9cde8a1502e04c9078242964b4bb22eb00c77\"\u003e\u003ccode\u003e9cd9cde\u003c/code\u003e\u003c/a\u003e fix(spec): remove six module\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/containerbuildsystem/dockerfile-parse/compare/2.0.0...2.0.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask` from 2.3.2 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/pallets/flask/releases\"\u003eflask's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.3\u003c/h2\u003e\n\u003cp\u003eThis is a fix release for the 2.3.x feature branch.\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eChanges: \u003ca href=\"https://flask.palletsprojects.com/en/2.3.x/changes/#version-2-3-3\"\u003ehttps://flask.palletsprojects.com/en/2.3.x/changes/#version-2-3-3\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eMilestone: \u003ca href=\"https://github.com/pallets/flask/milestone/31?closed=1\"\u003ehttps://github.com/pallets/flask/milestone/31?closed=1\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/pallets/flask/blob/main/CHANGES.rst\"\u003eflask's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 2.3.3\u003c/h2\u003e\n\u003cp\u003eReleased 2023-08-21\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003ePython 3.12 compatibility.\u003c/li\u003e\n\u003cli\u003eRequire Werkzeug \u0026gt;= 2.3.7.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e instead of \u003ccode\u003esetuptools\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eRefactor how an app's root and instance paths are determined. :issue:\u003ccode\u003e5160\u003c/code\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/pallets/flask/commit/3205b53c7cf69d17fee49cac6b84978175b7dd73\"\u003e\u003ccode\u003e3205b53\u003c/code\u003e\u003c/a\u003e release version 2.3.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/9f9550247a2798b9dcc28081c15e266442f4e28a\"\u003e\u003ccode\u003e9f95502\u003c/code\u003e\u003c/a\u003e bump werkzeug 2.3.7\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/02736640095ed6d5a4a409a9658eaca373fd1d48\"\u003e\u003ccode\u003e0273664\u003c/code\u003e\u003c/a\u003e Update dispatch by path example (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5217\"\u003e#5217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/a887e179b8af6a9c582a7918f9f8499ab58032cc\"\u003e\u003ccode\u003ea887e17\u003c/code\u003e\u003c/a\u003e clean up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/aa6d4c3e92bd11a7d449f49f524e54bbb88b89c0\"\u003e\u003ccode\u003eaa6d4c3\u003c/code\u003e\u003c/a\u003e update dispatch-by-path example\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/826514b8eb18f6c314cf566630253d35c89e42c3\"\u003e\u003ccode\u003e826514b\u003c/code\u003e\u003c/a\u003e fix flake8 bugbear findings\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/6d266f63633f5f127165d4ef836db14a59bbc106\"\u003e\u003ccode\u003e6d266f6\u003c/code\u003e\u003c/a\u003e Pass maxsplit via kwarg to re.split (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5215\"\u003e#5215\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/17e146ad949b3d80438faf95e81b53c543cb50f5\"\u003e\u003ccode\u003e17e146a\u003c/code\u003e\u003c/a\u003e Pass maxsplit via kwarg to re.split\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/8a72b741616556b4f739ea79ab502c2d2038844a\"\u003e\u003ccode\u003e8a72b74\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pallets/flask/issues/5211\"\u003e#5211\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/flask/commit/7255be9626ab56d81bc0ab86db939fcc1da9bca1\"\u003e\u003ccode\u003e7255be9\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/pallets/flask/compare/2.3.2...2.3.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-admin` from 1.6.1 to 2.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-admin/releases\"\u003eflask-admin's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for Python 3.14: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2685\"\u003epallets-eco/flask-admin#2685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a MenuDivider item for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2696\"\u003epallets-eco/flask-admin#2696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eField errors are now shown in red text for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2699\"\u003epallets-eco/flask-admin#2699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix documentation\u003c/li\u003e\n\u003cli\u003eUpdate arabic translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.0.0\u003c/h2\u003e\n\u003cp\u003eBreaking changes from v1.6.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for Python \u0026lt;3.10\u003c/li\u003e\n\u003cli\u003eUse of the \u003ccode\u003eboto\u003c/code\u003e library has been replaced by \u003ccode\u003eboto3\u003c/code\u003e. S3FileAdmin and S3Storage now accept an \u003ccode\u003es3_client\u003c/code\u003e parameter taking a \u003ccode\u003eboto3.client('s3')\u003c/code\u003e instance rather than \u003ccode\u003eaws_access_key_id\u003c/code\u003e, \u003ccode\u003eaws_secret_access_key\u003c/code\u003e, and \u003ccode\u003eregion\u003c/code\u003e parameters.\u003c/li\u003e\n\u003cli\u003eAzure Blob Storage SDK has been upgraded from the legacy version (v2) to the latest version (v12). AzureFileAdmin now accept \u003ccode\u003eblob_service_client\u003c/code\u003e rather than \u003ccode\u003econnection_string\u003c/code\u003e to give more flexibility with connection types.\u003c/li\u003e\n\u003cli\u003eFlask-BabelEx is no longer supported; the package is no longer maintained and Flask-Babel is recommended/active instead.\u003c/li\u003e\n\u003cli\u003eMongoengine support in Flask-Admin no longer uses Flask-Mongoengine, as that library is no longer actively maintained.\u003c/li\u003e\n\u003cli\u003eBootstrap2 and Bootstrap3 themes are no longer available.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAdmin()\u003c/code\u003e now takes a \u003ccode\u003etheme\u003c/code\u003e parameter that encapsulates all of the configuration options for theming the admin instance. This replaces the \u003ccode\u003etemplate_mode\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAll remaining Flask-Admin config has been namespaced under \u003ccode\u003eFLASK_ADMIN_\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ctable\u003e\n\u003cthead\u003e\n\u003ctr\u003e\n\u003cth\u003eConfig variable name\u003c/th\u003e\n\u003cth\u003eWhat's changed\u003c/th\u003e\n\u003c/tr\u003e\n\u003c/thead\u003e\n\u003ctbody\u003e\n\u003ctr\u003e\n\u003ctd\u003eFLASK_ADMIN_SWATCH\u003c/td\u003e\n\u003ctd\u003eRemoved; use \u003c!-- raw HTML omitted --\u003eTheme(swatch=...)\u003c!-- raw HTML omitted --\u003e instead\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eFLASK_ADMIN_FLUID_LAYOUT\u003c/td\u003e\n\u003ctd\u003eRemoved; use \u003c!-- raw HTML omitted --\u003eTheme(fluid=...)\u003c!-- raw HTML omitted --\u003e instead\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_MAP_ID\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_MAP_ID\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_SEARCH\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_SEARCH\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eMAPBOX_ACCESS_TOKEN\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_MAPBOX_ACCESS_TOKEN\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eGOOGLE_MAPS_API_KEY\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_GOOGLE_MAPS_API_KEY\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDEFAULT_CENTER_LAT\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LAT\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eDEFAULT_CENTER_LONG\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LONG\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eADMIN_RAISE_ON_INTEGRITY_ERROR\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_RAISE_ON_INTEGRITY_ERROR\u003c/td\u003e\n\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eADMIN_RAISE_ON_VIEW_EXCEPTION\u003c/td\u003e\n\u003ctd\u003eRenamed to FLASK_ADMIN_RAISE_ON_VIEW_EXCEPTION\u003c/td\u003e\n\u003c/tr\u003e\n\u003c/tbody\u003e\n\u003c/table\u003e\n\u003cp\u003eNew functionality:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdded support for Python \u0026lt;=3.13\u003c/li\u003e\n\u003cli\u003eThe default query for pymongo can be overridden\u003c/li\u003e\n\u003cli\u003eFlask async routes are supported\u003c/li\u003e\n\u003cli\u003eFlask-Admin now supports the \u003ccode\u003ehost_matching\u003c/code\u003e mode of Flask apps. See documentation for how to configure this where needed.\u003c/li\u003e\n\u003cli\u003eFlask-Admin is now compatible with SQLAlchemy v2+, Flask v3+, WTForms v3+, and Pillow v10+.\u003c/li\u003e\n\u003cli\u003eFlask-Admin now declares its dependencies and supported dependency versions more cleanly, including using pip extras. If you use Flask-Admin with SQLAlchemy, for example, you should use \u003ccode\u003epip install flask-admin[sqlalchemy]\u003c/code\u003e or list \u003ccode\u003eflask-admin[sqlalchemy]\u003c/code\u003e in your requirements.txt or pyproject.toml files.\u003c/li\u003e\n\u003cli\u003eApps using content security policies to restrict the assets that can be loaded can now whitelist Flask-Admin's assets by passing a \u003ccode\u003ecsp_nonce_generator\u003c/code\u003e function to the Admin instance. See examples or documentation for how to configure this where needed.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003epage_size_options\u003c/code\u003e can now be configured on Admin models, to restrict the page sizes that users can select. These are now enforced properly and cannot be bypassed by URL hacking.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eFixes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eBootstrap menu icons should show up properly and not duplicated\u003c/li\u003e\n\u003cli\u003eRedis CLI commands are now case insensitive\u003c/li\u003e\n\u003cli\u003eSQLAlchemy boolean filters now convert \u0026quot;1\u0026quot; and \u0026quot;0\u0026quot; to Python booleans, which fixes a type coercion issue with psycopg(3).\u003c/li\u003e\n\u003cli\u003eJinja templates can now be loaded in StrictUndefined mode.\u003c/li\u003e\n\u003cli\u003eRemove an implicit dependency on \u003ccode\u003epackaging\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFixed an error caused by the fallback implementation of \u003ccode\u003egettext()\u003c/code\u003e (when used in templates)\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/pallets-eco/flask-admin/blob/master/doc/changelog.rst\"\u003eflask-admin's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.0.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdds support for Python 3.14: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2685\"\u003epallets-eco/flask-admin#2685\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdds a MenuDivider item for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2696\"\u003epallets-eco/flask-admin#2696\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eField errors are now shown in red text for bootstrap themes: \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/pull/2699\"\u003epallets-eco/flask-admin#2699\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix documentation\u003c/li\u003e\n\u003cli\u003eUpdate arabic translations\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.0.0\u003c/h2\u003e\n\u003cp\u003eBreaking changes:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for Python \u0026lt;3.10\u003c/li\u003e\n\u003cli\u003eUse of the \u003ccode\u003eboto\u003c/code\u003e library has been replaced by \u003ccode\u003eboto3\u003c/code\u003e. S3FileAdmin and S3Storage now accept an \u003ccode\u003es3_client\u003c/code\u003e parameter taking a \u003ccode\u003eboto3.client('s3')\u003c/code\u003e instance rather than \u003ccode\u003eaws_access_key_id\u003c/code\u003e, \u003ccode\u003eaws_secret_access_key\u003c/code\u003e, and \u003ccode\u003eregion\u003c/code\u003e parameters.\u003c/li\u003e\n\u003cli\u003eAzure Blob Storage SDK has been upgraded from the legacy version (v2) to the latest version (v12). AzureFileAdmin now accept \u003ccode\u003eblob_service_client\u003c/code\u003e rather than \u003ccode\u003econnection_string\u003c/code\u003e to give more flexibility with connection types.\u003c/li\u003e\n\u003cli\u003eFlask-BabelEx is no longer supported; the package is no longer maintained and Flask-Babel is recommended/active instead.\u003c/li\u003e\n\u003cli\u003eMongoengine support in Flask-Admin no longer uses Flask-Mongoengine, as that library is no longer actively maintained.\u003c/li\u003e\n\u003cli\u003eBootstrap2 and Bootstrap3 themes are no longer available.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAdmin()\u003c/code\u003e now takes a \u003ccode\u003etheme\u003c/code\u003e parameter that encapsulates all of the configuration options for theming the admin instance. This replaces the \u003ccode\u003etemplate_mode\u003c/code\u003e parameter.\u003c/li\u003e\n\u003cli\u003eAll remaining Flask-Admin config has been namespaced under \u003ccode\u003eFLASK_ADMIN_\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. list-table:: Configuration Changes\n:widths: 50 50\n:header-rows: 1\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eConfig variable name\u003c/li\u003e\n\u003cli\u003eWhat's changed\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eFLASK_ADMIN_SWATCH\u003c/li\u003e\n\u003cli\u003eRemoved; use \u003ccode\u003eTheme(swatch=...)\u003c/code\u003e instead\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eFLASK_ADMIN_FLUID_LAYOUT\u003c/li\u003e\n\u003cli\u003eRemoved; use \u003ccode\u003eTheme(fluid=...)\u003c/code\u003e instead\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_MAP_ID\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_MAP_ID\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_SEARCH\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_SEARCH\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eMAPBOX_ACCESS_TOKEN\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_MAPBOX_ACCESS_TOKEN\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eGOOGLE_MAPS_API_KEY\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_GOOGLE_MAPS_API_KEY\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eDEFAULT_CENTER_LAT\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LAT\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eDEFAULT_CENTER_LONG\u003c/li\u003e\n\u003cli\u003eRenamed to FLASK_ADMIN_DEFAULT_CENTER_LONG\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cul\u003e\n\u003cli\u003eADMIN_RAISE_ON_INTEGRITY_ERROR\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/pallets-eco/flask-admin/commit/e26bee40d0aaddf7aaf2bc9d1f8949cfed3a709c\"\u003e\u003ccode\u003ee26bee4\u003c/code\u003e\u003c/a\u003e v2.0.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/6b0a8a03f0ebd3bcf28bfb59390c380c014b031d\"\u003e\u003ccode\u003e6b0a8a0\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2696\"\u003e#2696\u003c/a\u003e from samialfattani/feature/menu-divider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/67c5702d102e89c9ab96f5ed87d446595b9cc3a3\"\u003e\u003ccode\u003e67c5702\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2699\"\u003e#2699\u003c/a\u003e from samialfattani/err_desc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/9336e2d56c372ec697360f0d15fa1ddc93e7941f\"\u003e\u003ccode\u003e9336e2d\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2685\"\u003e#2685\u003c/a\u003e from pallets-eco/py3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/5368f70b925e85f724e5c91b2f8c894fab2855fe\"\u003e\u003ccode\u003e5368f70\u003c/code\u003e\u003c/a\u003e error discription in red color\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/731281b61d21f9fcc58243a71e5ee4d9574dbe3e\"\u003e\u003ccode\u003e731281b\u003c/code\u003e\u003c/a\u003e filter resource warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/0eb8920a5fcde4eae7d69fb463d6ae1f00dea64f\"\u003e\u003ccode\u003e0eb8920\u003c/code\u003e\u003c/a\u003e add menu divider\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/16d36f25e8d06d099db29b7a29d3b4eeb85b8ca5\"\u003e\u003ccode\u003e16d36f2\u003c/code\u003e\u003c/a\u003e Release v2.0.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/4303e46fa9b782c7136803e77f044c4abd39fa17\"\u003e\u003ccode\u003e4303e46\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pallets-eco/flask-admin/issues/2692\"\u003e#2692\u003c/a\u003e from samialfattani/fix_arabic\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-admin/commit/d923bbc5b163e92beaa2450c9c5a5532da866489\"\u003e\u003ccode\u003ed923bbc\u003c/code\u003e\u003c/a\u003e fix typos\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-admin/compare/v1.6.1...v2.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-babel` from 3.1.0 to 4.0.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-babel/flask-babel/releases\"\u003eflask-babel's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.0.0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDropped support for end-of-life Python 3.7. Support PyPy 3.9\u003c/li\u003e\n\u003cli\u003eReplace deprecated locked_cached_property decorator with cached_property (\u003ca href=\"https://redirect.github.com/python-babel/flask-babel/issues/230\"\u003e#230\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/python-babel/flask-babel/commit/a754eade39d9850693dd2b645ae8a2545df7fdf7\"\u003e\u003ccode\u003ea754ead\u003c/code\u003e\u003c/a\u003e Bump version: 3.1.1 → 4.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/d42f50c1f80279931279c076c40e2bacf74b4c15\"\u003e\u003ccode\u003ed42f50c\u003c/code\u003e\u003c/a\u003e Dropping Python 3.7 support, adding PyPy 3.9.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/db5c2a152330d3095aab868752342dad18653852\"\u003e\u003ccode\u003edb5c2a1\u003c/code\u003e\u003c/a\u003e Bump version: 3.1.0 → 3.1.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/6ca29cdc52587488c46f131dbb3b3cd69f4aa78c\"\u003e\u003ccode\u003e6ca29cd\u003c/code\u003e\u003c/a\u003e Merge branch 'jkittner-flask-2-3-deprecation'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/346a45a0e1fbf6fae735c70588754724a0101857\"\u003e\u003ccode\u003e346a45a\u003c/code\u003e\u003c/a\u003e Merge branch 'flask-2-3-deprecation' of github.com:jkittner/flask-babel into ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/dad9165d5cb4494e4473259bf37fc34a21974cad\"\u003e\u003ccode\u003edad9165\u003c/code\u003e\u003c/a\u003e Explicit app factory test.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/38f15cd15bdb742cadb81bcb8c8bfb81e0b5a1c5\"\u003e\u003ccode\u003e38f15cd\u003c/code\u003e\u003c/a\u003e Release triggered on public, not creation.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python-babel/flask-babel/commit/414a5a3dee8639b28ca6edd37e5f91adbc622e37\"\u003e\u003ccode\u003e414a5a3\u003c/code\u003e\u003c/a\u003e replace deprecated locked_cached_property decorator with cached_property\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/python-babel/flask-babel/compare/v3.1.0...v4.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-debugtoolbar` from 0.14.1 to 0.16.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/releases\"\u003eflask-debugtoolbar's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.16.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDrop Python 3.7 support in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/255\"\u003epallets-eco/flask-debugtoolbar#255\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire Flask \u0026gt;= 2.3.0 in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/256\"\u003epallets-eco/flask-debugtoolbar#256\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eDrop unnecessary Blinker dependency in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/248\"\u003epallets-eco/flask-debugtoolbar#248\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd static type annotations in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/259\"\u003epallets-eco/flask-debugtoolbar#259\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove \u003ccode\u003e__version__\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/260\"\u003epallets-eco/flask-debugtoolbar#260\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd support for \u003ccode\u003eFlask.host_matching\u003c/code\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/274\"\u003epallets-eco/flask-debugtoolbar#274\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.1...0.16.0\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.1...0.16.0\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.15.1\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix prob w/using w/o SQLAlchemy by \u003ca href=\"https://github.com/joelburton\"\u003e\u003ccode\u003e@​joelburton\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/253\"\u003epallets-eco/flask-debugtoolbar#253\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump to \u003ccode\u003e0.15.1\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/254\"\u003epallets-eco/flask-debugtoolbar#254\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/joelburton\"\u003e\u003ccode\u003e@​joelburton\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/253\"\u003epallets-eco/flask-debugtoolbar#253\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.0...0.15.1\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.15.0...0.15.1\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.15.0\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd minimal test without extra deps by \u003ca href=\"https://github.com/greyli\"\u003e\u003ccode\u003e@​greyli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/230\"\u003epallets-eco/flask-debugtoolbar#230\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRequire Flask \u0026gt;= 2.2.0 by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/224\"\u003epallets-eco/flask-debugtoolbar#224\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd option to dump profiler stats by \u003ca href=\"https://github.com/Dosenpfand\"\u003e\u003ccode\u003e@​Dosenpfand\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/204\"\u003epallets-eco/flask-debugtoolbar#204\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003einit_app()\u003c/code\u003e method to \u003ccode\u003eDebugPanel\u003c/code\u003e base class by \u003ca href=\"https://github.com/malthejorgensen\"\u003e\u003ccode\u003e@​malthejorgensen\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/95\"\u003epallets-eco/flask-debugtoolbar#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSupport applications using flask.copy_current_request_context by \u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/231\"\u003epallets-eco/flask-debugtoolbar#231\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix SQLAlchemy recording warning for versions \u0026gt;= 3 by \u003ca href=\"https://github.com/Jonty\"\u003e\u003ccode\u003e@​Jonty\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/233\"\u003epallets-eco/flask-debugtoolbar#233\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix missing \u003ccode\u003edistutils\u003c/code\u003e error on Python 3.12 by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/238\"\u003epallets-eco/flask-debugtoolbar#238\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eRemove deprecated Flask version attribute by \u003ca href=\"https://github.com/greyli\"\u003e\u003ccode\u003e@​greyli\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/243\"\u003epallets-eco/flask-debugtoolbar#243\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix trailing whitespace by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/237\"\u003epallets-eco/flask-debugtoolbar#237\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdate \u003ccode\u003ejquery.tablesorter.js\u003c/code\u003e plugin by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/235\"\u003epallets-eco/flask-debugtoolbar#235\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003ejquery\u003c/code\u003e to \u003ccode\u003e1.12.4\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/236\"\u003epallets-eco/flask-debugtoolbar#236\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump \u003ccode\u003ejquery\u003c/code\u003e to \u003ccode\u003e3.7.1\u003c/code\u003e and \u003ccode\u003ejquery-migrate\u003c/code\u003e to \u003ccode\u003e3.4.1\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/241\"\u003epallets-eco/flask-debugtoolbar#241\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix some \u003ccode\u003ejquery\u003c/code\u003e deprecation warnings by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/242\"\u003epallets-eco/flask-debugtoolbar#242\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace deprecated \u003ccode\u003epkg_resources\u003c/code\u003e with stdlib by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/239\"\u003epallets-eco/flask-debugtoolbar#239\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePrevent LookupError when accessing debug_toolbars_var by \u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/245\"\u003epallets-eco/flask-debugtoolbar#245\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eInstall custom Sphinx theme via \u003ccode\u003eextras_require\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/250\"\u003epallets-eco/flask-debugtoolbar#250\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e.readthedocs.yaml\u003c/code\u003e file by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/246\"\u003epallets-eco/flask-debugtoolbar#246\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump to \u003ccode\u003e0.15.0\u003c/code\u003e by \u003ca href=\"https://github.com/jeffwidman\"\u003e\u003ccode\u003e@​jeffwidman\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/251\"\u003epallets-eco/flask-debugtoolbar#251\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/malthejorgensen\"\u003e\u003ccode\u003e@​malthejorgensen\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/95\"\u003epallets-eco/flask-debugtoolbar#95\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/glic3rinu\"\u003e\u003ccode\u003e@​glic3rinu\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/231\"\u003epallets-eco/flask-debugtoolbar#231\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Jonty\"\u003e\u003ccode\u003e@​Jonty\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/pull/233\"\u003epallets-eco/flask-debugtoolbar#233\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.15.0\"\u003ehttps://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.15.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/pallets-eco/flask-debugtoolbar/commit/98c611ade925e1a615373edcd6313222ea57d221\"\u003e\u003ccode\u003e98c611a\u003c/code\u003e\u003c/a\u003e Release version 0.16.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/95b02b592036e4d74c1d837d0ef3bba06063aa38\"\u003e\u003ccode\u003e95b02b5\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group across 1 directory with 4 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/287\"\u003e#287\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/bd642464f28e053c52a09882665e5bd8af5132da\"\u003e\u003ccode\u003ebd64246\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/283\"\u003e#283\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/5671a92e1737699dcce8d792ae0113c150c52a7d\"\u003e\u003ccode\u003e5671a92\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group across 1 directory with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/ad6323994f2ab3226c6056755f535cb1aea62e42\"\u003e\u003ccode\u003ead63239\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/285\"\u003e#285\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/23612561077884f355fc34651955757d29289dc6\"\u003e\u003ccode\u003e2361256\u003c/code\u003e\u003c/a\u003e [pre-commit.ci] pre-commit autoupdate\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/e7b8136dea5a746195ebd4e9982ec2be8fc9c617\"\u003e\u003ccode\u003ee7b8136\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/280\"\u003e#280\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/ccf5ae22c6ebcd284fa4826bc21f570a624017c3\"\u003e\u003ccode\u003eccf5ae2\u003c/code\u003e\u003c/a\u003e Merge branch 'main' into dependabot/github_actions/github-actions-5070efb06b\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/4e98b183f3060d38028a0e2c47649553b23dc063\"\u003e\u003ccode\u003e4e98b18\u003c/code\u003e\u003c/a\u003e Bump the python-requirements group in /requirements with 2 updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-debugtoolbar/issues/279\"\u003e#279\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/commit/5b4f4a0fcd29ed152f8041a386d264a1cd04cc30\"\u003e\u003ccode\u003e5b4f4a0\u003c/code\u003e\u003c/a\u003e Bump the github-actions group with 3 updates\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-debugtoolbar/compare/0.14.1...0.16.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-mail` from 0.9.1 to 0.10.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets-eco/flask-mail/releases\"\u003eflask-mail's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.10.0\u003c/h2\u003e\n\u003cp\u003eFlask-Mail is now part of the Pallets Community Ecosystem. Pallets is the open source organization that maintains Flask; Pallets-Eco enables community maintenance of related projects. If you are interested in helping maintain this project, please reach out on \u003ca href=\"https://discord.gg/pallets\"\u003ethe Pallets Discord server\u003c/a\u003e.\u003c/p\u003e\n\u003cp\u003eThis release mainly refreshes the project after its extended hiatus. It now uses the standard Pallets project layout, tools, and configurations. Documentation is now hosted at \u003ca href=\"https://flask-mail.readthedocs.io\"\u003ehttps://flask-mail.readthedocs.io\u003c/a\u003e. The library now exports static type annotations.\u003c/p\u003e\n\u003cp\u003eChanges: \u003ca href=\"https://flask-mail.readthedocs.io/en/latest/changes/#version-0-10-0\"\u003ehttps://flask-mail.readthedocs.io/en/latest/changes/#version-0-10-0\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets-eco/flask-mail/milestone/1?closed=1\"\u003ehttps://github.com/pallets-eco/flask-mail/milestone/1?closed=1\u003c/a\u003e\nPyPI: \u003ca href=\"https://pypi.org/project/Flask-Mail/0.10.0/\"\u003ehttps://pypi.org/project/Flask-Mail/0.10.0/\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python \u0026lt; 3.8.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epyproject.toml\u003c/code\u003e for packaging metadata.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eApply code formatting and linting tools.\u003c/li\u003e\n\u003cli\u003eAdd static type annotations.\u003c/li\u003e\n\u003cli\u003eDeprecate the \u003ccode\u003e__version__\u003c/code\u003e attribute. Use feature detection or \u003ccode\u003eimportlib.metadata.version(\u0026quot;flask-mail\u0026quot;)\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003eIndicate that the deprecated \u003ccode\u003eis_bad_headers\u003c/code\u003e will be removed in the next version.\u003c/li\u003e\n\u003cli\u003eFix the \u003ccode\u003eemail_dispatched\u003c/code\u003e signal to pass the current app as the sender and \u003ccode\u003emessage\u003c/code\u003e as an argument, rather than the other way around.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.data\u003c/code\u003e may not be \u003ccode\u003eNone\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.content_type\u003c/code\u003e will be detected based on \u003ccode\u003efilename\u003c/code\u003e and \u003ccode\u003edata\u003c/code\u003e and will not be \u003ccode\u003eNone\u003c/code\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/pallets-eco/flask-mail/blob/main/CHANGES.md\"\u003eflask-mail's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 0.10.0\u003c/h2\u003e\n\u003cp\u003eReleased 2024-05-23\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for Python \u0026lt; 3.8.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003epyproject.toml\u003c/code\u003e for packaging metadata.\u003c/li\u003e\n\u003cli\u003eUse \u003ccode\u003eflit_core\u003c/code\u003e as build backend.\u003c/li\u003e\n\u003cli\u003eApply code formatting and linting tools.\u003c/li\u003e\n\u003cli\u003eAdd static type annotations.\u003c/li\u003e\n\u003cli\u003eDeprecate the \u003ccode\u003e__version__\u003c/code\u003e attribute. Use feature detection or\n\u003ccode\u003eimportlib.metadata.version(\u0026quot;flask-mail\u0026quot;)\u003c/code\u003e instead.\u003c/li\u003e\n\u003cli\u003eIndicate that the deprecated \u003ccode\u003eis_bad_headers\u003c/code\u003e will be removed in the next\nversion.\u003c/li\u003e\n\u003cli\u003eFix the \u003ccode\u003eemail_dispatched\u003c/code\u003e signal to pass the current app as the sender and\n\u003ccode\u003emessage\u003c/code\u003e as an argument, rather than the other way around.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.data\u003c/code\u003e may not be \u003ccode\u003eNone\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003eAttachment.content_type\u003c/code\u003e will be detected based on \u003ccode\u003efilename\u003c/code\u003e and \u003ccode\u003edata\u003c/code\u003e\nand will not be \u003ccode\u003eNone\u003c/code\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/pallets-eco/flask-mail/commit/848ea85f2bf2583d7f0ef58ed55ac1d18f67883a\"\u003e\u003ccode\u003e848ea85\u003c/code\u003e\u003c/a\u003e release version 0.10.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/0ec1f6b59407f064ece6db351e2da86f4f9ea557\"\u003e\u003ccode\u003e0ec1f6b\u003c/code\u003e\u003c/a\u003e remove test pypi\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/846a67ecf442d908c45057d8c39e2a16150d4868\"\u003e\u003ccode\u003e846a67e\u003c/code\u003e\u003c/a\u003e add static type annotations (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/221\"\u003e#221\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/9075a7a453839a2d8918635ac517713375d26357\"\u003e\u003ccode\u003e9075a7a\u003c/code\u003e\u003c/a\u003e fix signal argument order (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/219\"\u003e#219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/7b450bd11060bb2885b107c22593326cf488ebad\"\u003e\u003ccode\u003e7b450bd\u003c/code\u003e\u003c/a\u003e update \u003ccode\u003eis_bad_headers\u003c/code\u003e deprecation message (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/218\"\u003e#218\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/56914a8512cade43990ea0161560cef8b9bc7391\"\u003e\u003ccode\u003e56914a8\u003c/code\u003e\u003c/a\u003e deprecate \u003ccode\u003e__version__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/217\"\u003e#217\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/1932b747f8323c3225fa306f6f36e561face7368\"\u003e\u003ccode\u003e1932b74\u003c/code\u003e\u003c/a\u003e update project files (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/216\"\u003e#216\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/46bddb7cd0f543c32d79ee449087664143927a61\"\u003e\u003ccode\u003e46bddb7\u003c/code\u003e\u003c/a\u003e Various minor doc updates (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/214\"\u003e#214\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/610faf7d5f7b1cf3f0706bd8ca1aec9bba9fa654\"\u003e\u003ccode\u003e610faf7\u003c/code\u003e\u003c/a\u003e Update docs to use myst-parser (and be written in .md) (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/212\"\u003e#212\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets-eco/flask-mail/commit/bede1aca81ebf585cf9d8284e8881c94e8eb269b\"\u003e\u003ccode\u003ebede1ac\u003c/code\u003e\u003c/a\u003e notify 0.8 backward incompatible changes in ChangeLog (\u003ca href=\"https://redirect.github.com/pallets-eco/flask-mail/issues/109\"\u003e#109\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets-eco/flask-mail/compare/0.9.1...0.10.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `flask-migrate` from 3.0.1 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/releases\"\u003eflask-migrate's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 4.1.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.7\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.6\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.5\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGES.md\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.4\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.3\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.2\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.1\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 4.0.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\u003c/p\u003e\n\u003ch2\u003eRelease 3.1.0\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/blob/main/CHANGES.md\"\u003eCHANGE.LOG\u003c/a\u003e for release notes.\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/miguelgrinberg/Flask-Migrate/blob/main/CHANGES.md\"\u003eflask-migrate's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eFlask-Migrate Change Log\u003c/h1\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.1.0\u003c/strong\u003e - 2025-01-10\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAccept arguments such as \u003ccode\u003e--directory\u003c/code\u003e in environment variables \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/553\"\u003e#553\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/12a181ce0542659f10b4ce154a10cfd41fa1f501\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix minor typos in documentation \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/552\"\u003e#552\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/3b073a2c500303894c495d2e4fa0ef449b6a2833\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eKevin Kirsche\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.7\u003c/strong\u003e - 2024-03-11\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRegression from \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/438\"\u003e#438\u003c/a\u003e: check \u003ccode\u003eg.x_arg\u003c/code\u003e exists before accessing it \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/541\"\u003e#541\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7e8032c61e5c47f4e50b03dcf98c3b20dd5a8e55\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eSkye Im\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.6\u003c/strong\u003e - 2024-03-09\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAccept \u003ccode\u003e-x\u003c/code\u003e options for all db commands \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/438\"\u003e#438\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/6f3f889c36030134f87dc1db327c2385d873a4d6\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003e--purge\u003c/code\u003e flag to the \u003ccode\u003estamp\u003c/code\u003e command \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/540\"\u003e#540\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/af67bb093df5652c867b88880c5934bfc68313cc\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eJono N\u003c/strong\u003e!)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.5\u003c/strong\u003e - 2023-09-12\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCompatibility fixes for Flask-SQLAlchemy \u0026gt;= 3.1 \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/526\"\u003e#526\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/f562178bbe1912912f3cb6877cbae8b0899c74da\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003eDavid Lord\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003eprocess_revision_directives\u003c/code\u003e option to be configurable \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/523\"\u003e#523\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/821e37fcc4a5e339f197153cdbb4dd2316cbd44b\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003ellc\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eStop testing Python 3.7, as Flask-SQLAlchemy 3.1 stopped supporting it (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/8d175193f00bf4e5578f0142d011093d8cd53d57\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.4\u003c/strong\u003e - 2023-02-02\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCorrectly obtain database URL with SQLAlchemy 2.0 \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/505\"\u003e#505\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/c8cd02c5d3d43bbab462b863db5417b5d69228bb\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eRelease 4.0.3\u003c/strong\u003e - 2023-01-29\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eRemove legacy \u003cstrong\u003efuture\u003c/strong\u003e import in Alembic templates \u003ca href=\"https://redirect.github.com/miguelgrinberg/flask-migrate/issues/504\"\u003e#504\u003c/a\u003e (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7a388cfe320254735f4ed65ac655caaf0cae8b28\"\u003ecommit\u003c/a\u003e) (thanks \u003cstrong\u003ePamela Fox\u003c/strong\u003e!)\u003c/li\u003e\n\u003cli\u003eAdd SQLAlchemy 1.4 and 2.0 to the test matrix (\u003ca href=\"https://github.com/miguelgrinberg/flask-migrate/commit/7a725f2e3267f1c3bb4920cd3bff3a9ff1d7eb6e\"\u003ecommit\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSwitch to pytest as test runner (\u003c...\n\n_Description has been truncated_","html_url":"https://github.com/cabotage/cabotage-app/pull/149","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/cabotage%2Fcabotage-app/issues/149","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/149/packages"}},{"old_version":"2.3.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2026-02-04T20:16:39.000Z","version_change":"2.3.0 → 2.4.0","issue":{"uuid":"3898247049","node_id":"PR_kwDOKO3IB87Bje1Z","number":69,"state":"closed","title":"requirements: bump the pip-minor-patch group with 50 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-02-18T14:32:56.000Z","author_association":null,"state_reason":null,"created_at":"2026-02-04T20:16:39.000Z","updated_at":"2026-02-18T14:33:26.000Z","time_to_close":1188977,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"requirements: bump","group_name":"pip-minor-patch","update_count":50,"packages":[{"name":"attrs","old_version":"25.3.0","new_version":"25.4.0","repository_url":"https://github.com/sponsors/hynek"},{"name":"idna","old_version":"3.10","new_version":"3.11","repository_url":"https://github.com/kjd/idna"},{"name":"incremental","old_version":"24.7.2","new_version":"24.11.0","repository_url":"https://github.com/twisted/incremental"},{"name":"psutil","old_version":"7.0.0","new_version":"7.2.2","repository_url":"https://github.com/giampaolo/psutil"},{"name":"typing-extensions","old_version":"4.14.0","new_version":"4.15.0","repository_url":"https://github.com/python/typing_extensions"},{"name":"markdown","old_version":"3.8","new_version":"3.10.1","repository_url":"https://github.com/Python-Markdown/markdown"},{"name":"coverage","old_version":"7.9.1","new_version":"7.13.3","repository_url":"https://github.com/coveragepy/coveragepy"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"mypy","old_version":"1.16.0","new_version":"1.19.1","repository_url":"https://github.com/python/mypy"},{"name":"mypy-zope","old_version":"1.0.12","new_version":"1.0.14","repository_url":"https://github.com/Shoobx/mypy-zope"},{"name":"alembic","old_version":"1.18.1","new_version":"1.18.3","repository_url":"https://github.com/sqlalchemy/alembic"},{"name":"boto3","old_version":"1.38.36","new_version":"1.42.41","repository_url":"https://github.com/boto/boto3"},{"name":"botocore","old_version":"1.38.36","new_version":"1.42.41","repository_url":"https://github.com/boto/botocore"},{"name":"charset-normalizer","old_version":"3.4.2","new_version":"3.4.4","repository_url":"https://github.com/jawah/charset_normalizer"},{"name":"dill","old_version":"0.4.0","new_version":"0.4.1","repository_url":"https://github.com/uqfoundation/dill"},{"name":"evalidate","old_version":"2.0.5","new_version":"2.1.3","repository_url":"https://github.com/yaroslaff/evalidate"},{"name":"greenlet","old_version":"3.2.3","new_version":"3.3.1","repository_url":"https://github.com/python-greenlet/greenlet"},{"name":"jmespath","old_version":"1.0.1","new_version":"1.1.0","repository_url":"https://github.com/jmespath/jmespath.py"},{"name":"lz4","old_version":"4.4.4","new_version":"4.4.5","repository_url":"https://github.com/python-lz4/python-lz4"},{"name":"zstandard","old_version":"0.23.0","new_version":"0.25.0","repository_url":"https://github.com/indygreg/python-zstandard"},{"name":"brotli","old_version":"1.1.0","new_version":"1.2.0","repository_url":"https://github.com/google/brotli"},{"name":"markupsafe","old_version":"3.0.2","new_version":"3.0.3","repository_url":"https://github.com/pallets/markupsafe"},{"name":"moto","old_version":"5.1.6","new_version":"5.1.20","repository_url":"https://github.com/getmoto/moto"},{"name":"msgpack","old_version":"1.1.1","new_version":"1.1.2","repository_url":"https://github.com/msgpack/msgpack-python"},{"name":"pyjwt","old_version":"2.10.1","new_version":"2.11.0","repository_url":"https://github.com/jpadilla/pyjwt"},{"name":"pyopenssl","old_version":"25.1.0","new_version":"25.3.0","repository_url":"https://github.com/pyca/pyopenssl"},{"name":"pyyaml","old_version":"6.0.2","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"requests","old_version":"2.32.4","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"responses","old_version":"0.25.7","new_version":"0.25.8","repository_url":"https://github.com/getsentry/responses"},{"name":"ruff","old_version":"0.14.0","new_version":"0.15.0","repository_url":"https://github.com/astral-sh/ruff"},{"name":"s3transfer","old_version":"0.13.0","new_version":"0.16.0","repository_url":"https://github.com/boto/s3transfer"},{"name":"sqlalchemy","old_version":"2.0.41","new_version":"2.0.46","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"urllib3","old_version":"2.5.0","new_version":"2.6.3","repository_url":"https://github.com/urllib3/urllib3"},{"name":"werkzeug","old_version":"3.1.4","new_version":"3.1.5","repository_url":"https://github.com/pallets/werkzeug"},{"name":"zope-event","old_version":"6.0","new_version":"6.1","repository_url":"https://github.com/zopefoundation/zope.event"},{"name":"altgraph","old_version":"0.17.4","new_version":"0.17.5","repository_url":"https://github.com/ronaldoussoren/altgraph"},{"name":"pyinstaller","old_version":"6.14.1","new_version":"6.18.0","repository_url":"https://github.com/pyinstaller/pyinstaller"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"pycairo","old_version":"1.28.0","new_version":"1.29.0","repository_url":"https://github.com/pygobject/pycairo"},{"name":"sphinx-rtd-theme","old_version":"3.0.2","new_version":"3.1.0","repository_url":"https://github.com/readthedocs/sphinx_rtd_theme"},{"name":"sphinxcontrib-spelling","old_version":"8.0.1","new_version":"8.0.2","repository_url":"https://github.com/sphinx-contrib/spelling"},{"name":"babel","old_version":"2.17.0","new_version":"2.18.0","repository_url":"https://github.com/python-babel/babel"},{"name":"click","old_version":"8.2.1","new_version":"8.3.1","repository_url":"https://github.com/pallets/click"},{"name":"docutils","old_version":"0.21.2","new_version":"0.22.4","repository_url":"https://github.com/rtfd/recommonmark"},{"name":"pyenchant","old_version":"3.2.2","new_version":"3.3.0","repository_url":"https://github.com/pyenchant/pyenchant"},{"name":"psycopg2-binary","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"pg8000","old_version":"1.31.2","new_version":"1.31.5","repository_url":"https://github.com/tlocke/pg8000"},{"name":"scramp","old_version":"1.4.5","new_version":"1.4.8","repository_url":"https://github.com/tlocke/scramp"},{"name":"wheel","old_version":"0.45.1","new_version":"0.46.3","repository_url":"https://github.com/pypa/wheel"},{"name":"build","old_version":"1.2.2.post1","new_version":"1.4.0","repository_url":"https://github.com/pypa/build"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pip-minor-patch group with 50 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [attrs](https://github.com/sponsors/hynek) | `25.3.0` | `25.4.0` |\n| [idna](https://github.com/kjd/idna) | `3.10` | `3.11` |\n| [incremental](https://github.com/twisted/incremental) | `24.7.2` | `24.11.0` |\n| [psutil](https://github.com/giampaolo/psutil) | `7.0.0` | `7.2.2` |\n| [typing-extensions](https://github.com/python/typing_extensions) | `4.14.0` | `4.15.0` |\n| [markdown](https://github.com/Python-Markdown/markdown) | `3.8` | `3.10.1` |\n| [coverage](https://github.com/coveragepy/coveragepy) | `7.9.1` | `7.13.3` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [mypy](https://github.com/python/mypy) | `1.16.0` | `1.19.1` |\n| [mypy-zope](https://github.com/Shoobx/mypy-zope) | `1.0.12` | `1.0.14` |\n| [alembic](https://github.com/sqlalchemy/alembic) | `1.18.1` | `1.18.3` |\n| [boto3](https://github.com/boto/boto3) | `1.38.36` | `1.42.41` |\n| [botocore](https://github.com/boto/botocore) | `1.38.36` | `1.42.41` |\n| [charset-normalizer](https://github.com/jawah/charset_normalizer) | `3.4.2` | `3.4.4` |\n| [dill](https://github.com/uqfoundation/dill) | `0.4.0` | `0.4.1` |\n| [evalidate](https://github.com/yaroslaff/evalidate) | `2.0.5` | `2.1.3` |\n| [greenlet](https://github.com/python-greenlet/greenlet) | `3.2.3` | `3.3.1` |\n| [jmespath](https://github.com/jmespath/jmespath.py) | `1.0.1` | `1.1.0` |\n| [lz4](https://github.com/python-lz4/python-lz4) | `4.4.4` | `4.4.5` |\n| [zstandard](https://github.com/indygreg/python-zstandard) | `0.23.0` | `0.25.0` |\n| [brotli](https://github.com/google/brotli) | `1.1.0` | `1.2.0` |\n| [markupsafe](https://github.com/pallets/markupsafe) | `3.0.2` | `3.0.3` |\n| [moto](https://github.com/getmoto/moto) | `5.1.6` | `5.1.20` |\n| [msgpack](https://github.com/msgpack/msgpack-python) | `1.1.1` | `1.1.2` |\n| [pyjwt](https://github.com/jpadilla/pyjwt) | `2.10.1` | `2.11.0` |\n| [pyopenssl](https://github.com/pyca/pyopenssl) | `25.1.0` | `25.3.0` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.2` | `6.0.3` |\n| [requests](https://github.com/psf/requests) | `2.32.4` | `2.32.5` |\n| [responses](https://github.com/getsentry/responses) | `0.25.7` | `0.25.8` |\n| [ruff](https://github.com/astral-sh/ruff) | `0.14.0` | `0.15.0` |\n| [s3transfer](https://github.com/boto/s3transfer) | `0.13.0` | `0.16.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.41` | `2.0.46` |\n| [urllib3](https://github.com/urllib3/urllib3) | `2.5.0` | `2.6.3` |\n| [werkzeug](https://github.com/pallets/werkzeug) | `3.1.4` | `3.1.5` |\n| [zope-event](https://github.com/zopefoundation/zope.event) | `6.0` | `6.1` |\n| [altgraph](https://github.com/ronaldoussoren/altgraph) | `0.17.4` | `0.17.5` |\n| [pyinstaller](https://github.com/pyinstaller/pyinstaller) | `6.14.1` | `6.18.0` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [pycairo](https://github.com/pygobject/pycairo) | `1.28.0` | `1.29.0` |\n| [sphinx-rtd-theme](https://github.com/readthedocs/sphinx_rtd_theme) | `3.0.2` | `3.1.0` |\n| [sphinxcontrib-spelling](https://github.com/sphinx-contrib/spelling) | `8.0.1` | `8.0.2` |\n| [babel](https://github.com/python-babel/babel) | `2.17.0` | `2.18.0` |\n| [click](https://github.com/pallets/click) | `8.2.1` | `8.3.1` |\n| [docutils](https://github.com/rtfd/recommonmark) | `0.21.2` | `0.22.4` |\n| [pyenchant](https://github.com/pyenchant/pyenchant) | `3.2.2` | `3.3.0` |\n| [psycopg2-binary](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [pg8000](https://github.com/tlocke/pg8000) | `1.31.2` | `1.31.5` |\n| [scramp](https://github.com/tlocke/scramp) | `1.4.5` | `1.4.8` |\n| [wheel](https://github.com/pypa/wheel) | `0.45.1` | `0.46.3` |\n| [build](https://github.com/pypa/build) | `1.2.2.post1` | `1.4.0` |\n\nUpdates `attrs` from 25.3.0 to 25.4.0\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/sponsors/hynek/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `idna` from 3.10 to 3.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/kjd/idna/blob/master/HISTORY.rst\"\u003eidna's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e3.11 (2025-10-12)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eUpdate to Unicode 16.0.0, including significant changes to UTS46\nprocessing. As a result of Unicode ending support for it, transitional\nprocessing no longer has an effect and returns the same result.\u003c/li\u003e\n\u003cli\u003eAdd support for Python 3.14, lowest supported version is Python 3.8.\u003c/li\u003e\n\u003cli\u003eVarious updates to packaging, including PEP 740 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/kjd/idna/commit/ad949ee3052c2265c66e3df2dd8871a5832ba327\"\u003e\u003ccode\u003ead949ee\u003c/code\u003e\u003c/a\u003e Release v3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/cae4ba779e0a543823894bd4136651c187944da8\"\u003e\u003ccode\u003ecae4ba7\u003c/code\u003e\u003c/a\u003e Second release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/8adb305165c77c4a45d1568a70ead75d2197692c\"\u003e\u003ccode\u003e8adb305\u003c/code\u003e\u003c/a\u003e Add space in RST link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/74cb2b652bb06133b0c4ab52cc98221be63162cf\"\u003e\u003ccode\u003e74cb2b6\u003c/code\u003e\u003c/a\u003e Release candidate for 3.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/05dab09fdde5bbf7d52f757c4dc62e0ba934cca8\"\u003e\u003ccode\u003e05dab09\u003c/code\u003e\u003c/a\u003e Format idna-data with ruff\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/90eac78b737d26613776b490432fc6d926b15c55\"\u003e\u003ccode\u003e90eac78\u003c/code\u003e\u003c/a\u003e Apply ruff formatting\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a31ce7ecc0b767e40abb5ce28744ac567b73f366\"\u003e\u003ccode\u003ea31ce7e\u003c/code\u003e\u003c/a\u003e Remove errant test vectors\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/81f03334211c78c1832991ce70ebafb3cbfbb79c\"\u003e\u003ccode\u003e81f0333\u003c/code\u003e\u003c/a\u003e Omit vectors known to be broken in test suite\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/a0f32578c0cac28c7ffbb4c860c92eb2b9b579bd\"\u003e\u003ccode\u003ea0f3257\u003c/code\u003e\u003c/a\u003e Merge branch 'master' into unicode-16-uts46-changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/kjd/idna/commit/38d98860e6a1ab92fd35ab09ea4739feabf339a3\"\u003e\u003ccode\u003e38d9886\u003c/code\u003e\u003c/a\u003e Remove extra UTS46 test vector\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/kjd/idna/compare/v3.10...v3.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `incremental` from 24.7.2 to 24.11.0\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/twisted/incremental/blob/trunk/NEWS.rst\"\u003eincremental's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eIncremental 24.11.0 (2025-11-27)\u003c/h1\u003e\n\u003ch2\u003eFeatures\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental now provides a CLI script, \u003ccode\u003eincremental\u003c/code\u003e, allowing you to run it with \u003ccode\u003epipx run incremental\u003c/code\u003e.\nThe \u003ccode\u003eincremental update\u003c/code\u003e subcommand offers the same functionality as \u003ccode\u003epython -m incremental.update\u003c/code\u003e. (\u003ccode\u003e[#99](https://github.com/twisted/incremental/issues/99) \u0026lt;https://github.com/twisted/incremental/issues/99\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eIncremental now depends on packaging instead of setuptools at runtime (\u003ccode\u003e[#141](https://github.com/twisted/incremental/issues/141) \u0026lt;https://github.com/twisted/incremental/issues/141\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eAdd Python 3.13 and 3.14 to the test matrix. (\u003ccode\u003e[#179](https://github.com/twisted/incremental/issues/179) \u0026lt;https://github.com/twisted/incremental/issues/179\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eBugfixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBuild Incremental itself with Hatchling, working around failures with certain versions of setuptools (\u003ccode\u003e[#122](https://github.com/twisted/incremental/issues/122) \u0026lt;https://github.com/twisted/incremental/issues/122\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental's documentation now highlights its primary features: CalVer and indeterminate versions (NEXT). (\u003ccode\u003e[#2](https://github.com/twisted/incremental/issues/2) \u0026lt;https://github.com/twisted/incremental/issues/2\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eDeprecations and Removals\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental's CLI no longer depends on Click, so you no longer need to install \u003ccode\u003eincremental[scripts]\u003c/code\u003e for it to function.\nThe \u003ccode\u003escripts\u003c/code\u003e extra is deprecated. (\u003ccode\u003e[#99](https://github.com/twisted/incremental/issues/99) \u0026lt;https://github.com/twisted/incremental/issues/99\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.8, which has been end-of-life since October 2024. (\u003ccode\u003e[#179](https://github.com/twisted/incremental/issues/179) \u0026lt;https://github.com/twisted/incremental/issues/179\u0026gt;\u003c/code\u003e__)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eMisc\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e[#105](https://github.com/twisted/incremental/issues/105) \u0026lt;https://github.com/twisted/incremental/issues/105\u0026gt;\u003c/code\u003e\u003cstrong\u003e, \u003ccode\u003e[#116](https://github.com/twisted/incremental/issues/116) \u0026lt;https://github.com/twisted/incremental/issues/116\u0026gt;\u003c/code\u003e\u003c/strong\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/twisted/incremental/commit/2e15ebbbd5bdddb122179074e7d088dd0f5bf198\"\u003e\u003ccode\u003e2e15ebb\u003c/code\u003e\u003c/a\u003e Release Incremental 25.11.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/28034621f305d108c8992ef67ca1e04bfff18741\"\u003e\u003ccode\u003e2803462\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/184\"\u003e#184\u003c/a\u003e from twisted/dependabot/github_actions/actions/checko...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/ab9ac5cc1d8abefa00d9526100063f25c3fa770a\"\u003e\u003ccode\u003eab9ac5c\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/fa2a4c70ac385ca5a8d7471313cba668356e3e77\"\u003e\u003ccode\u003efa2a4c7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/183\"\u003e#183\u003c/a\u003e from twisted/dependabot/pip/packaging-9f19c49aaa\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/e9a45a25824b6d37096e5cdad4a78cd2fccd21b6\"\u003e\u003ccode\u003ee9a45a2\u003c/code\u003e\u003c/a\u003e Bump build in the packaging group across 1 directory\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/f72107413d4d7af3fad1cc5315ec150fd94f7ede\"\u003e\u003ccode\u003ef721074\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/180\"\u003e#180\u003c/a\u003e from twisted/dependabot/pip/uv-0.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/6678e1cd092f207915f57f2a18f71ed1cda76037\"\u003e\u003ccode\u003e6678e1c\u003c/code\u003e\u003c/a\u003e Bump uv from 0.9.5 to 0.9.6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/b98b8c58c98a67c038dfc1c8c993d2dd1baa8bcf\"\u003e\u003ccode\u003eb98b8c5\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/twisted/incremental/issues/179\"\u003e#179\u003c/a\u003e from twisted/new-pythons\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/d9ae87ec397cd465b08ac9b85877acbf8ca6a8d4\"\u003e\u003ccode\u003ed9ae87e\u003c/code\u003e\u003c/a\u003e Add newsfragments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/twisted/incremental/commit/61c2784efe858da52d31609b12cdb831aaabb75f\"\u003e\u003ccode\u003e61c2784\u003c/code\u003e\u003c/a\u003e Drop support for Python 3.8\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/twisted/incremental/compare/incremental-24.7.2...incremental-24.11.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psutil` from 7.0.0 to 7.2.2\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/giampaolo/psutil/blob/master/HISTORY.rst\"\u003epsutil's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e7.2.2\u003c/h1\u003e\n\u003cp\u003e2026-01-28\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2705_: [Linux]: \u003ccode\u003eProcess.wait()\u003c/code\u003e_ now uses \u003ccode\u003epidfd_open()\u003c/code\u003e + \u003ccode\u003epoll()\u003c/code\u003e for\nwaiting, resulting in no busy loop and faster response times. Requires\nLinux \u0026gt;= 5.3 and Python \u0026gt;= 3.9. Falls back to traditional polling if\nunavailable.\u003c/li\u003e\n\u003cli\u003e2705_: [macOS], [BSD]: \u003ccode\u003eProcess.wait()\u003c/code\u003e_ now uses \u003ccode\u003ekqueue()\u003c/code\u003e for waiting,\nresulting in no busy loop and faster response times.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2701_, [macOS]: fix compilation error on macOS \u0026lt; 10.7.  (patch by Sergey\nFedorov)\u003c/li\u003e\n\u003cli\u003e2707_, [macOS]: fix potential memory leaks in error paths of\n\u003ccode\u003eProcess.memory_full_info()\u003c/code\u003e and \u003ccode\u003eProcess.threads()\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e2708_, [macOS]: Process.cmdline()\u003ccode\u003e_ and \u003c/code\u003eProcess.environ()\u003ccode\u003e_ may fail with ``OSError: [Errno 0] Undefined error`` (from ``sysctl(KERN_PROCARGS2)``). They now raise \u003c/code\u003eAccessDenied`_ instead.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.1\u003c/h1\u003e\n\u003cp\u003e2025-12-29\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e2699_, [FreeBSD], [NetBSD]: \u003ccode\u003eheap_info()\u003c/code\u003e_ does not detect small allocations\n(\u0026lt;= 1K). In order to fix that, we now flush internal jemalloc cache before\nfetching the metrics.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e7.2.0\u003c/h1\u003e\n\u003cp\u003e2025-12-23\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eEnhancements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e1275_: new \u003ccode\u003eheap_info()\u003c/code\u003e_ and \u003ccode\u003eheap_trim()\u003c/code\u003e_ functions, providing direct\naccess to the platform's native C heap allocator (glibc, mimalloc,\nlibmalloc). Useful to create tools to detect memory leaks.\u003c/li\u003e\n\u003cli\u003e2403_, [Linux]: publish wheels for Linux musl.\u003c/li\u003e\n\u003cli\u003e2680_: unit tests are no longer installed / part of the distribution. They\nnow live under \u003ccode\u003etests/\u003c/code\u003e instead of \u003ccode\u003epsutil/tests\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eBug fixes\u003c/strong\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/giampaolo/psutil/commit/9eea97dd6f1d16ea33f5144c8925f1ce7a0688e1\"\u003e\u003ccode\u003e9eea97d\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/938ac647418f09e4e610b2c755741316713c5592\"\u003e\u003ccode\u003e938ac64\u003c/code\u003e\u003c/a\u003e Rm sphinxcontrib.googleanalytics; override layout.html\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/9dcbb7e60e650f0ab0cb52154b0a12c70f6a1e4c\"\u003e\u003ccode\u003e9dcbb7e\u003c/code\u003e\u003c/a\u003e Add sphinxcontrib-googleanalytics to requirements.txt\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/76eaf9ae0f2868569c14b46f4165310885a40a15\"\u003e\u003ccode\u003e76eaf9a\u003c/code\u003e\u003c/a\u003e Try to add google analytics to doc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/de1cafa56f54e97ca557993155e76dd98877e136\"\u003e\u003ccode\u003ede1cafa\u003c/code\u003e\u003c/a\u003e Update doc mentioning Process.wait() internal details\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/bb30943b0336a16f28437ec549c15a8ad2830cca\"\u003e\u003ccode\u003ebb30943\u003c/code\u003e\u003c/a\u003e Refact can_use_pidfd_open() and can_use_kqueue()\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/a571717d6520d436273c8cb34ca871db4bfa508a\"\u003e\u003ccode\u003ea571717\u003c/code\u003e\u003c/a\u003e \u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2708\"\u003e#2708\u003c/a\u003e, macos / cmdline / environ; raise AD instead of OSError(0) (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2709\"\u003e#2709\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/8b98c3effc20dcc4ed08c8f3d33e11ec0f5445b1\"\u003e\u003ccode\u003e8b98c3e\u003c/code\u003e\u003c/a\u003e Pre-release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/700b7e6a4171ae7c775679217205f1d97568ae00\"\u003e\u003ccode\u003e700b7e6\u003c/code\u003e\u003c/a\u003e [macOS] fix potential leaks in error paths (\u003ca href=\"https://redirect.github.com/giampaolo/psutil/issues/2707\"\u003e#2707\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/giampaolo/psutil/commit/7cc7923a1479fb1d32bb25d3e78b465e2695fbf7\"\u003e\u003ccode\u003e7cc7923\u003c/code\u003e\u003c/a\u003e Windows / cmdline(): be more defensive in free()ing in case of error\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/giampaolo/psutil/compare/release-7.0.0...release-7.2.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `typing-extensions` from 4.14.0 to 4.15.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python/typing_extensions/releases\"\u003etyping-extensions's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e4.15.0\u003c/h2\u003e\n\u003cp\u003eNo user-facing changes since 4.15.0rc1.\u003c/p\u003e\n\u003cp\u003eNew features since 4.14.1:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.15.0rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e4.14.1\u003c/h2\u003e\n\u003ch1\u003eRelease 4.14.1 (July 4, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix usage of \u003ccode\u003etyping_extensions.TypedDict\u003c/code\u003e nested inside other types\n(e.g., \u003ccode\u003etyping.Type[typing_extensions.TypedDict]\u003c/code\u003e). This is not allowed by the\ntype system but worked on older versions, so we maintain 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/python/typing_extensions/blob/main/CHANGELOG.md\"\u003etyping-extensions's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003eRelease 4.15.0 (August 25, 2025)\u003c/h1\u003e\n\u003cp\u003eNo user-facing changes since 4.15.0rc1.\u003c/p\u003e\n\u003ch1\u003eRelease 4.15.0rc1 (August 18, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eAdd the \u003ccode\u003e@typing_extensions.disjoint_base\u003c/code\u003e decorator, as specified\nin PEP 800. Patch by Jelle Zijlstra.\u003c/li\u003e\n\u003cli\u003eAdd \u003ccode\u003etyping_extensions.type_repr\u003c/code\u003e, a backport of\n\u003ca href=\"https://docs.python.org/3.14/library/annotationlib.html#annotationlib.type_repr\"\u003e\u003ccode\u003eannotationlib.type_repr\u003c/code\u003e\u003c/a\u003e,\nintroduced in Python 3.14 (CPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/124551\"\u003e#124551\u003c/a\u003e,\noriginally by Jelle Zijlstra). Patch by Semyon Moroz.\u003c/li\u003e\n\u003cli\u003eFix behavior of type params in \u003ccode\u003etyping_extensions.evaluate_forward_ref\u003c/code\u003e. Backport of\nCPython PR \u003ca href=\"https://redirect.github.com/python/cpython/pull/137227\"\u003e#137227\u003c/a\u003e by Jelle Zijlstra.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003eRelease 4.14.1 (July 4, 2025)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003eFix usage of \u003ccode\u003etyping_extensions.TypedDict\u003c/code\u003e nested inside other types\n(e.g., \u003ccode\u003etyping.Type[typing_extensions.TypedDict]\u003c/code\u003e). This is not allowed by the\ntype system but worked on older versions, so we maintain 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/python/typing_extensions/commit/9d1637e264b5c1a6b7acee3e907015f89b20c2c9\"\u003e\u003ccode\u003e9d1637e\u003c/code\u003e\u003c/a\u003e Prepare release 4.15.0 (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/4bd67c5be5d9443c7d33c314d02a56ee125eb88d\"\u003e\u003ccode\u003e4bd67c5\u003c/code\u003e\u003c/a\u003e Coverage: exclude some noise (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/656\"\u003e#656\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/e589a26da73b075c5276bae40b86db1af0144f84\"\u003e\u003ccode\u003ee589a26\u003c/code\u003e\u003c/a\u003e Coverage: add detailed report to job summary (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/655\"\u003e#655\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/67d37fed1298e050f74d5acc95b2621bd37837ad\"\u003e\u003ccode\u003e67d37fe\u003c/code\u003e\u003c/a\u003e Coverage: Implement fail_under (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/654\"\u003e#654\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/e9ae26f5286edee9262727755ecb9ad16e999192\"\u003e\u003ccode\u003ee9ae26f\u003c/code\u003e\u003c/a\u003e Don't delete previous coverage comment (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/653\"\u003e#653\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/ac80bb728a3006fc88ef7373b92f0c25cfcc7895\"\u003e\u003ccode\u003eac80bb7\u003c/code\u003e\u003c/a\u003e Add Coverage workflow (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/623\"\u003e#623\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/abaaafd98c1cc7e5baf098ec287a3d22cb339670\"\u003e\u003ccode\u003eabaaafd\u003c/code\u003e\u003c/a\u003e Prepare release 4.15.0rc1 (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/650\"\u003e#650\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/98104053ea8d49bcdd247804e5fa9f73136acbd4\"\u003e\u003ccode\u003e9810405\u003c/code\u003e\u003c/a\u003e Add \u003ccode\u003e@disjoint_base\u003c/code\u003e (PEP 800) (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/634\"\u003e#634\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/7ee9e05fd484d06899ce56e80f5e1aa4c760fc03\"\u003e\u003ccode\u003e7ee9e05\u003c/code\u003e\u003c/a\u003e Backport type_params fix from CPython (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/646\"\u003e#646\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/typing_extensions/commit/1e8eb9c06ef51b3a1e1f05303a16feca13f5ed98\"\u003e\u003ccode\u003e1e8eb9c\u003c/code\u003e\u003c/a\u003e Do not refer to PEP 705 as being experimental (\u003ca href=\"https://redirect.github.com/python/typing_extensions/issues/648\"\u003e#648\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/typing_extensions/compare/4.14.0...4.15.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `markdown` from 3.8 to 3.10.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Python-Markdown/markdown/releases\"\u003emarkdown's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eRelease 3.10.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested elements inside inline comments are properly unescaped (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1571\"\u003e#1571\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eMake the docs build successfully with mkdocstrings-python 2.0 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1575\"\u003e#1575\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix infinite loop when multiple bogus or unclosed HTML comments appear in input (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1578\"\u003e#1578\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix another infinite loop when handling bad comments (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1586\"\u003e#1586\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.10.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.9.0\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.2\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14.\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eRelease 3.8.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure incomplete markup declaration in raw HTML doesn't crash parser (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1534\"\u003e#1534\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed dropped content in \u003ccode\u003emd_in_html\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1526\"\u003e#1526\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFixed HTML handling corner case that prevented some content from not being rendered (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1528\"\u003e#1528\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/Python-Markdown/markdown/blob/master/docs/changelog.md\"\u003emarkdown's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[3.10.1] - 2026-01-21\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure nested elements inside inline comments are properly unescaped (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1571\"\u003e#1571\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eMake the docs build successfully with mkdocstrings-python 2.0 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1575\"\u003e#1575\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix infinite loop when multiple bogus or unclosed HTML comments appear in input (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1578\"\u003e#1578\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix another infinite loop when handling bad comments (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1586\"\u003e#1586\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.10.0] - 2025-11-03\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eOfficially support Python 3.14 and PyPy 3.11 and drop support for Python 3.9\nand PyPy 3.9.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix an HTML comment parsing case in some Python versions that can cause an\ninfinite loop (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1554\"\u003e#1554\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eRevert the default behavior of \u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e (to \u003ccode\u003eTrue\u003c/code\u003e). The new\nbehavior introduced in 3.9.0 is experimental and results are inconsistent.\nIt should not have been made the default behavior (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1561\"\u003e#1561\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.9.0] - 2025-09-04\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFootnotes are now ordered by the occurrence of their references in the\ndocument. A new configuration option for the footnotes extension,\n\u003ccode\u003eUSE_DEFINITION_ORDER\u003c/code\u003e, has been added to support restoring the previous\nbehavior of ordering footnotes by the occurrence of definitions (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1367\"\u003e#1367\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnsure inline processing iterates through elements in document order (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1546\"\u003e#1546\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix handling of incomplete HTML tags in code spans in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1547\"\u003e#1547\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.2] - 2025-06-19\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix \u003ccode\u003ecodecs\u003c/code\u003e deprecation in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed comment parsing in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed declarations in Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003cli\u003eFix issue with unclosed HTML tag \u003ccode\u003e\u0026lt;foo\u003c/code\u003e and Python 3.14 (\u003ca href=\"https://redirect.github.com/Python-Markdown/markdown/issues/1537\"\u003e#1537\u003c/a\u003e).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[3.8.1] - 2025-06-18\u003c/h2\u003e\n\u003ch3\u003eFixed\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/Python-Markdown/markdown/commit/e5fa5b86e8ec380cbc520cfc637d72c779e5c601\"\u003e\u003ccode\u003ee5fa5b8\u003c/code\u003e\u003c/a\u003e Bump version to 3.10.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/f9253495f5d9919f2fdd5e147832b5fc21330f65\"\u003e\u003ccode\u003ef925349\u003c/code\u003e\u003c/a\u003e More HTML fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/9933a0a4699f3dea91f46528a2bf54863f531c08\"\u003e\u003ccode\u003e9933a0a\u003c/code\u003e\u003c/a\u003e Revert \u0026quot;Allow reference links with backticks\u0026quot;\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/07dfa4eb43f7a2ab3181b4f842a960a03a6c1221\"\u003e\u003ccode\u003e07dfa4e\u003c/code\u003e\u003c/a\u003e Allow reference links with backticks\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/fb6b27a6ff90980b5bcb0cd51528a7c9dc3a93ca\"\u003e\u003ccode\u003efb6b27a\u003c/code\u003e\u003c/a\u003e Fix infinite loop when text contains multiple unclosed comments\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/89112c293f7b399ae8808f3a06306f46601e9684\"\u003e\u003ccode\u003e89112c2\u003c/code\u003e\u003c/a\u003e Make the docs build successfully with mkdocstrings-python 2.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/961856ceb30623b929d8b7abdf5ed7074db7184c\"\u003e\u003ccode\u003e961856c\u003c/code\u003e\u003c/a\u003e Update link\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/2b49115b1002142afbd84b3002f13c0e98a0f487\"\u003e\u003ccode\u003e2b49115\u003c/code\u003e\u003c/a\u003e Ensure nested elements inside inline comments are properly unescaped.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/22e89c1fc346f72218a10e392a0c3b4731912522\"\u003e\u003ccode\u003e22e89c1\u003c/code\u003e\u003c/a\u003e Bump version to 3.10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Python-Markdown/markdown/commit/c138aea5139a6aceae05bb957e866d9ce7577b94\"\u003e\u003ccode\u003ec138aea\u003c/code\u003e\u003c/a\u003e + PY314 - PY39\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Python-Markdown/markdown/compare/3.8...3.10.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `coverage` from 7.9.1 to 7.13.3\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.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\u003cp\u003e.. _issue 2082: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2082\"\u003ecoveragepy/coveragepy#2082\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-2:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.2 — 2026-01-25\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eFix: when Python is installed via symlinks, for example with Homebrew, the\nstandard library files could be incorrectly included in coverage reports.\nThis is now fixed, closing \u003ccode\u003eissue 2115\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: if a data file is created with no read permissions, the combine step\nwould fail completely. Now a warning is issued and the file is skipped.\nCloses \u003ccode\u003eissue 2117\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _issue 2115: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2115\"\u003ecoveragepy/coveragepy#2115\u003c/a\u003e\n.. _issue 2117: \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2117\"\u003ecoveragepy/coveragepy#2117\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e.. _changes_7-13-1:\u003c/p\u003e\n\u003ch2\u003eVersion 7.13.1 — 2025-12-28\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eAdded: the JSON report now includes a \u003ccode\u003e\u0026quot;start_line\u0026quot;\u003c/code\u003e key for function and\nclass regions, indicating the first line of the region in the source. Closes\n\u003ccode\u003eissue 2110\u003c/code\u003e_.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAdded: The \u003ccode\u003edebug data\u003c/code\u003e command now takes file names as arguments on the\ncommand line, so you can inspect specific data files without needing to set\nthe \u003ccode\u003eCOVERAGE_FILE\u003c/code\u003e environment variable.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: the JSON report used to report module docstrings as executed lines,\nwhich no other report did, as described in \u003ccode\u003eissue 2105\u003c/code\u003e_. This is now fixed,\nthanks to Jianrong Zhao.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix: coverage.py uses a more disciplined approach to detecting where\nthird-party code is installed, and avoids measuring it. This shouldn't change\nany behavior. If you find that it does, please get in touch.\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/coveragepy/coveragepy/commit/6bf962f476b2f4cf344e9aa981dbbc8138cdfb69\"\u003e\u003ccode\u003e6bf962f\u003c/code\u003e\u003c/a\u003e docs: sample HTML for 7.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/9f2e54c31bfe3af00d1d276a4e76014b896c13ad\"\u003e\u003ccode\u003e9f2e54c\u003c/code\u003e\u003c/a\u003e docs: prep for 7.13.3\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/6208c42e7ee6047d6d21b3c5c515f56fc10e7b2d\"\u003e\u003ccode\u003e6208c42\u003c/code\u003e\u003c/a\u003e fix: find third-party packages in more locations. \u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2082\"\u003e#2082\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/edb50169c00ad9a90b2104a85adc57965dc23c2e\"\u003e\u003ccode\u003eedb5016\u003c/code\u003e\u003c/a\u003e refactor: make dataclass imports uniform\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/b05826a0f6ab909fe136468647a45e74926cd570\"\u003e\u003ccode\u003eb05826a\u003c/code\u003e\u003c/a\u003e chore: bump actions/setup-python in the action-dependencies group (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2126\"\u003e#2126\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/b519e17acf1c311c0868e7e571da47b43dd1f6f7\"\u003e\u003ccode\u003eb519e17\u003c/code\u003e\u003c/a\u003e refactor: no need for ox_profile connection\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/775f1cb19d232e6849b5bb662431390cc7d9a0b5\"\u003e\u003ccode\u003e775f1cb\u003c/code\u003e\u003c/a\u003e build: remove pudb, I can install it if I need it\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/0ccb1fe603352cfdc2c4cfbe062a84015d8f3454\"\u003e\u003ccode\u003e0ccb1fe\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/e9e2a0e8e740915c525256e84e2a628849374c5c\"\u003e\u003ccode\u003ee9e2a0e\u003c/code\u003e\u003c/a\u003e chore: bump actions/checkout in the action-dependencies group (\u003ca href=\"https://redirect.github.com/coveragepy/coveragepy/issues/2122\"\u003e#2122\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/coveragepy/coveragepy/commit/77e1a04e898ed8851eeb17f761b4fecacf3de01c\"\u003e\u003ccode\u003e77e1a04\u003c/code\u003e\u003c/a\u003e chore: make upgrade\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/coveragepy/coveragepy/compare/7.9.1...7.13.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `hvac` from 2.3.0 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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.16.0 to 1.19.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.19.1\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix noncommutative joins with bounded TypeVars (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20345\"\u003e20345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eRespect output format for cached runs by serializing raw errors in cache metas (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20372\"\u003e20372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAllow \u003ccode\u003etypes.NoneType\u003c/code\u003e in match cases (A5rocks, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20383\"\u003e20383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix mypyc generator regression with empty tuple (BobTheBuidler, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20371\"\u003e20371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash involving Unpack-ed TypeVarTuple (Shantanu, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20323\"\u003e20323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash on star import of redefinition (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20333\"\u003e20333\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix crash on typevar with forward ref used in other module (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20334\"\u003e20334\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFail with an explicit error on PyPy (Ivan Levkivskyi, PR \u003ca href=\"https://redirect.github.com/python/mypy/pull/20389\"\u003e20389\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\u003eBobTheBuidler\u003c/li\u003e\n\u003cli\u003ebzoracler\u003c/li\u003e\n\u003cli\u003eChainfire\u003c/li\u003e\n\u003cli\u003eChristoph Tyralla\u003c/li\u003e\n\u003cli\u003eDavid Foster\u003c/li\u003e\n\u003cli\u003eFrank Dana\u003c/li\u003e\n\u003cli\u003eGuo Ci\u003c/li\u003e\n\u003cli\u003eiap\u003c/li\u003e\n\u003cli\u003eIvan Levkivskyi\u003c/li\u003e\n\u003cli\u003eJames Hilton-Balfe\u003c/li\u003e\n\u003cli\u003ejhance\u003c/li\u003e\n\u003cli\u003eJoren Hammudoglu\u003c/li\u003e\n\u003cli\u003eJukka Lehtosalo\u003c/li\u003e\n\u003cli\u003eKarelKenens\u003c/li\u003e\n\u003cli\u003eKevin Kannammalil\u003c/li\u003e\n\u003cli\u003eMarc Mueller\u003c/li\u003e\n\u003cli\u003eMichael Carlstrom\u003c/li\u003e\n\u003cli\u003eMichael J. Sullivan\u003c/li\u003e\n\u003cli\u003ePiotr Sawicki\u003c/li\u003e\n\u003cli\u003eRandolf Scholz\u003c/li\u003e\n\u003cli\u003eShantanu\u003c/li\u003e\n\u003cli\u003eSigve Sebastian Farstad\u003c/li\u003e\n\u003cli\u003esobolevn\u003c/li\u003e\n\u003cli\u003eStanislav Terliakov\u003c/li\u003e\n\u003cli\u003eStephen Morton\u003c/li\u003e\n\u003cli\u003eTheodore Ando\u003c/li\u003e\n\u003cli\u003eThiago J. Barbalho\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.18\u003c/h2\u003e\n\u003cp\u003eWe’ve just uploaded mypy 1.18.1 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\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/412c19a6bde31e7afa7f41afdf8356664689ae80\"\u003e\u003ccode\u003e412c19a\u003c/code\u003e\u003c/a\u003e Bump version to 1.19.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/20aea0a6ca0710f5427239bdd2fd8e8bf1caf634\"\u003e\u003ccode\u003e20aea0a\u003c/code\u003e\u003c/a\u003e Update changelog for 1.19.1 (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20414\"\u003e#20414\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/2b23b507524bf1bd7513eea6f2a16fb91e072cb6\"\u003e\u003ccode\u003e2b23b50\u003c/code\u003e\u003c/a\u003e Serialize raw errors in cache metas (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20372\"\u003e#20372\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/f60f90fb8872bf722e32aefd548daaf6d8560e05\"\u003e\u003ccode\u003ef60f90f\u003c/code\u003e\u003c/a\u003e Fail on PyPy in main instead of setup.py (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20389\"\u003e#20389\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/58d485b4ea4776e0b9d4045b306cb0818ecc2aa6\"\u003e\u003ccode\u003e58d485b\u003c/code\u003e\u003c/a\u003e Fail with an explicit error on PyPy (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20384\"\u003e#20384\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/a4b31a26788b70c4a2a19adbafa2bbda43dc2e8b\"\u003e\u003ccode\u003ea4b31a2\u003c/code\u003e\u003c/a\u003e Allow \u003ccode\u003etypes.NoneType\u003c/code\u003e in match cases (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20383\"\u003e#20383\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/8a6eff478416cd3ed3931a6ed77ce61c88ab69e9\"\u003e\u003ccode\u003e8a6eff4\u003c/code\u003e\u003c/a\u003e [mypyc] fix generator regression with empty tuple (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20371\"\u003e#20371\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/70eceea682c041c0d8e8462dffef9c7bb252e014\"\u003e\u003ccode\u003e70eceea\u003c/code\u003e\u003c/a\u003e Fix noncommutative joins with bounded TypeVars (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20345\"\u003e#20345\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/3890fc49bf7cc02db04b1e63eb2540aaacdeecc0\"\u003e\u003ccode\u003e3890fc4\u003c/code\u003e\u003c/a\u003e Fix crash involving Unpack-ed TypeVarTuple (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20323\"\u003e#20323\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/python/mypy/commit/c93d917a86993e06dcc88e508f28f4f5199ce1c8\"\u003e\u003ccode\u003ec93d917\u003c/code\u003e\u003c/a\u003e Fix crash on star import of redefinition (\u003ca href=\"https://redirect.github.com/python/mypy/issues/20333\"\u003e#20333\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/python/mypy/compare/v1.16.0...v1.19.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `mypy-zope` from 1.0.12 to 1.0.14\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Shoobx/mypy-zope/blob/master/CHANGELOG.md\"\u003emypy-zope's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e1.0.14 (2025-12-01)\u003c/h2\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eSupport mypy-1.19\u003c/li\u003e\n\u003cli\u003eSupport mypy-1.18\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e1.0.13 (2025-07-17)\u003c/h2\u003e\n\u003chr /\u003e\n\u003cul\u003e\n\u003cli\u003eDrop support for python-3.8 (follow mypy).\u003c/li\u003e\n\u003cli\u003eSupport mypy-1.17\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/Shoobx/mypy-zope/commit/38d22f3f4f6fc1b85c9a0d3b64577749f682a6d2\"\u003e\u003ccode\u003e38d22f3\u003c/code\u003e\u003c/a\u003e Preparing release 1.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/76762ec861b1b3cddc471f1e8949902f3f3264be\"\u003e\u003ccode\u003e76762ec\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/4971d98ab80db3362bd5864a92d385e8c5a43aec\"\u003e\u003ccode\u003e4971d98\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Shoobx/mypy-zope/issues/134\"\u003e#134\u003c/a\u003e from Shoobx/dependabot/pip/mypy-gte-1.0.0-and-lt-1.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/47af89d2c709f9e478ddbd5590994eba0829fb34\"\u003e\u003ccode\u003e47af89d\u003c/code\u003e\u003c/a\u003e Update mypy requirement from \u0026lt;1.19.0,\u0026gt;=1.0.0 to \u0026gt;=1.0.0,\u0026lt;1.20.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/0c596ff804a1ece6a8d33c0abf1587a766e047c8\"\u003e\u003ccode\u003e0c596ff\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/dcaa27841defa865c474f585e8bb799a8242399f\"\u003e\u003ccode\u003edcaa278\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Shoobx/mypy-zope/issues/132\"\u003e#132\u003c/a\u003e from Shoobx/dependabot/pip/mypy-gte-1.0.0-and-lt-1.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/8f7b6778df6e3dde48c082ec07182e50b9938c76\"\u003e\u003ccode\u003e8f7b677\u003c/code\u003e\u003c/a\u003e Update mypy requirement from \u0026lt;1.18.0,\u0026gt;=1.0.0 to \u0026gt;=1.0.0,\u0026lt;1.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/91b275b364cc90403b2a160695f32ca27bc06bb9\"\u003e\u003ccode\u003e91b275b\u003c/code\u003e\u003c/a\u003e Back to development: 1.0.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/8a3165b79643927ae8b03902baaf1651a2f5ca9c\"\u003e\u003ccode\u003e8a3165b\u003c/code\u003e\u003c/a\u003e Preparing release 1.0.13\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Shoobx/mypy-zope/commit/421b21ff753291f3b62b4b3deef9bc4cb91b199e\"\u003e\u003ccode\u003e421b21f\u003c/code\u003e\u003c/a\u003e Maintain changelog\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Shoobx/mypy-zope/compare/1.0.12...1.0.14\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `alembic` from 1.18.1 to 1.18.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sqlalchemy/alembic/releases\"\u003ealembic's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e1.18.3\u003c/h1\u003e\n\u003cp\u003eReleased: January 29, 2026\u003c/p\u003e\n\u003ch2\u003ebug\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[bug] [autogenerate]\u003c/strong\u003e Fixed regression in version 1.18.0 due to \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e where autogenerate\nwould raise \u003ccode\u003eNoReferencedTableError\u003c/code\u003e when a foreign key constraint\nreferenced a table that was not part of the initial table load, including\ntables filtered out by the\n\u003ccode\u003eEnvironmentContext.configure.include_name\u003c/code\u003e callable or tables\nin remote schemas that were not included in the initial reflection run.\u003c/p\u003e\n\u003cp\u003eThe change in \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e was a performance optimization that eliminated\nadditional reflection queries for tables that were only referenced by\nforeign keys but not explicitly included in the main reflection run.\nHowever, this optimization inadvertently removed the creation of\n\u003ccode\u003eTable\u003c/code\u003e objects for these referenced tables, causing autogenerate\nto fail when processing foreign key constraints that pointed to them.\u003c/p\u003e\n\u003cp\u003eThe fix creates placeholder \u003ccode\u003eTable\u003c/code\u003e objects for foreign key targets\nthat are not reflected, allowing the autogenerate comparison to proceed\nwithout error while maintaining the performance improvement from\n\u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1771\"\u003e#1771\u003c/a\u003e. When multiple foreign keys reference different columns in\nthe same filtered table, the placeholder table accumulates all necessary\ncolumns. These placeholder tables may be visible when using the\n\u003ccode\u003eEnvironmentContext.configure.include_object\u003c/code\u003e callable to\ninspect \u003ccode\u003eForeignKeyConstraint\u003c/code\u003e objects; they will have the name,\nschema and basic column information for the relevant columns present.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1787\"\u003e#1787\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[bug] [general]\u003c/strong\u003e Fixed regression caused by \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1669\"\u003e#1669\u003c/a\u003e which requires SQLAlchemy objects\nto support generic type subscripting; for the older SQLAlchemy 1.4 series,\nthis requires version 1.4.23.  Changed the minimum requirements to require\nversion 1.4.23 rather than 1.4.0.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://redirect.github.com/sqlalchemy/alembic/issues/1788\"\u003e#1788\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch1\u003e1.18.2\u003c/h1\u003e\n\u003cp\u003eReleased: January 28, 2026\u003c/p\u003e\n\u003ch2\u003eusecase\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[usecase] [operations]\u003c/strong\u003e The \u003ccode\u003eprimary_key\u003c/code\u003e parameter on \u003ccode\u003eColumn\u003c/code\u003e is now honored when\n\u003ccode\u003eOperations.add_column()\u003c/code\u003e is used, and will emit the \u0026quot;PRIMARY KEY\u0026quot;\nkeyword inline within the ADD COLUMN directive.  This is strictly a syntax\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\u003eSee full diff in \u003ca href=\"https://github.com/sqlalchemy/alembic/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `boto3` from 1.38.36 to 1.42.41\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/60637f8fc25c9411abb7f430eb3c2466437d1704\"\u003e\u003ccode\u003e60637f8\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.41'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/662d4a34c5c6dea278de160e694e1e8055c590bf\"\u003e\u003ccode\u003e662d4a3\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.41\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/5dcc61b903fef7201710dab6ac14a8d3b0dbbc3d\"\u003e\u003ccode\u003e5dcc61b\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/15a78179d4ba9127aa5903edd9fe6265a45dc25f\"\u003e\u003ccode\u003e15a7817\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/6bea7925951176592700c630baaa3a35eaec1d6b\"\u003e\u003ccode\u003e6bea792\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/3f92d07e04146184a1769c89616ccb8d304e9fd3\"\u003e\u003ccode\u003e3f92d07\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.40\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/0069675fdee79041187d17d3d96cbe47daa992c9\"\u003e\u003ccode\u003e0069675\u003c/code\u003e\u003c/a\u003e Add changelog entries from botocore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/66d036066f907ffebf4f49c87cde3009ec270b87\"\u003e\u003ccode\u003e66d0360\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.0 to 4.32.1 (\u003ca href=\"https://redirect.github.com/boto/boto3/issues/4715\"\u003e#4715\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/fd93dbb656cec791e048992bc24d78850e672c59\"\u003e\u003ccode\u003efd93dbb\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/boto3/commit/18836475f987e84d196a6ddd485ae1a3d876dd32\"\u003e\u003ccode\u003e1883647\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39' into develop\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/boto3/compare/1.38.36...1.42.41\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `botocore` from 1.38.36 to 1.42.41\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/104e8ef284991c77c516d1da7f9cf9917d6e63f2\"\u003e\u003ccode\u003e104e8ef\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.41'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/7436ba994fe0e5cc69f302be8e5efd4c8c9859ce\"\u003e\u003ccode\u003e7436ba9\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.41\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/1a0813ab227c0a0275b3b332b051a737ecec68fc\"\u003e\u003ccode\u003e1a0813a\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/12d57f623893fafc71889af397fd3df30b321318\"\u003e\u003ccode\u003e12d57f6\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/a7e48591d05e948cb7f126d7cc5a6a7ce9313859\"\u003e\u003ccode\u003ea7e4859\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.40' into develop\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/fa102f5401b0b251d5ba0431a69d1c18d2165c21\"\u003e\u003ccode\u003efa102f5\u003c/code\u003e\u003c/a\u003e Bumping version to 1.42.40\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/84898c56e81e251bd97373233550cdf3c83593b1\"\u003e\u003ccode\u003e84898c5\u003c/code\u003e\u003c/a\u003e Update endpoints model\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/14b6a17a426ad0f8e0abe2540dfd43a736b1c2eb\"\u003e\u003ccode\u003e14b6a17\u003c/code\u003e\u003c/a\u003e Update to latest models\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/bb59587528ecc5193b8af2ef6ead9503364bbe7a\"\u003e\u003ccode\u003ebb59587\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 4.31.0 to 4.32.0 (\u003ca href=\"https://redirect.github.com/boto/botocore/issues/3625\"\u003e#3625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/boto/botocore/commit/26a688fcf87081fb56bd950f8feaef8d3a1abd06\"\u003e\u003ccode\u003e26a688f\u003c/code\u003e\u003c/a\u003e Merge branch 'release-1.42.39'\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/boto/botocore/compare/1.38.36...1.42.41\"\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.2 to 3.4.4\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.4\u003c/h2\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/Ousret/charset_normalizer/compare/3.4.3...3.4.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003emultiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\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\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.4\"\u003e3.4.4\u003c/a\u003e (2025-10-13)\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBound \u003ccode\u003esetuptools\u003c/code\u003e to a specific constraint \u003ccode\u003esetuptools\u0026gt;=68,\u0026lt;=81\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003eRaised upper bound of mypyc for the optional pre-built extension to v1.18.2\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eRemoved\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003esetuptools-scm\u003c/code\u003e as a build dependency.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eMisc\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eEnforced hashes in \u003ccode\u003edev-requirements.txt\u003c/code\u003e and created \u003ccode\u003eci-requirements.txt\u003c/code\u003e for security purposes.\u003c/li\u003e\n\u003cli\u003eAdditional pre-built wheels for riscv64, s390x, and armv7l architectures.\u003c/li\u003e\n\u003cli\u003eRestore \u003ccode\u003e multiple.intoto.jsonl\u003c/code\u003e in GitHub releases in addition to individual attestation file per wheel.\u003c/li\u003e\n\u003c/ul\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\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/b30ffdcc2f11043c0d34e60fe66d3815cd49b32b\"\u003e\u003ccode\u003eb30ffdc\u003c/code\u003e\u003c/a\u003e :wrench: fix checksum step in cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/d3fbfcfad7dfe3c640886f1a6a6351da527f6634\"\u003e\u003ccode\u003ed3fbfcf\u003c/code\u003e\u003c/a\u003e :wrench: fix cd.yml\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/dafbb95f8c00d3cc8b99158caa63006ffab98749\"\u003e\u003ccode\u003edafbb95\u003c/code\u003e\u003c/a\u003e Release 3.4.4 (\u003ca href=\"https://redirect.github.com/jawah/charset_normalizer/issues/658\"\u003e#658\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/1f18ffaa69d2c84fea7abedb8840197ba9c14562\"\u003e\u003ccode\u003e1f18ffa\u003c/code\u003e\u003c/a\u003e :arrow_up: raise mypy upper bound to 1.18.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/ef4ac69ad203891f24e26b2422ab3a08053044fa\"\u003e\u003ccode\u003eef4ac69\u003c/code\u003e\u003c/a\u003e Merge branch 'release-3.4.4' of github.com:jawah/charset_normalizer into rele...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/4b35dda053db5e2e60a247e80a116e4ef04f439b\"\u003e\u003ccode\u003e4b35dda\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/0ec6452f1a34cbc77a55b237c4118807b44c2a33\"\u003e\u003ccode\u003e0ec6452\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/f341edec8a828dda394abfa011b1ded8b4b102e2\"\u003e\u003ccode\u003ef341ede\u003c/code\u003e\u003c/a\u003e :arrow_up: upgrade dependencies (dev, ci)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/a308841e660a4d61ea6c448e7b8bf97415ecdc4a\"\u003e\u003ccode\u003ea308841\u003c/code\u003e\u003c/a\u003e :pencil: write changelog for 3.4.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/jawah/charset_normalizer/commit/9c906da611d5ca5ef076d6bf7f60e629f661d0b0\"\u003e\u003ccode\u003e9c906da\u003c/code\u003e\u003c/a\u003e :wrench: update cd.yml workflow (add riscv64, s390x and armv7l)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/jawah/charset_normalizer/compare/3.4.2...3.4.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dill` from 0.4.0 to 0.4.1\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/a9d4d39c411296fb3608c4ffd142134559942d21\"\u003e\u003ccode\u003ea9d4d39\u003c/code\u003e\u003c/a\u003e tag: 0.4.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/54370bde90434f98100c646d4b78575b3385840f\"\u003e\u003ccode\u003e54370bd\u003c/code\u003e\u003c/a\u003e cleanup outdated docs (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/742\"\u003e#742\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/bae7c217fea05667e1e20ea29239878f9bab6930\"\u003e\u003ccode\u003ebae7c21\u003c/code\u003e\u003c/a\u003e fix pypy311 registered, update travis ci (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/741\"\u003e#741\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/7daa95d0a5caaeeb0bf8705ec339215ff90c1425\"\u003e\u003ccode\u003e7daa95d\u003c/code\u003e\u003c/a\u003e Bump urllib3 from 2.6.0 to 2.6.3 in /docs (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/739\"\u003e#739\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/5fbd3a77aa53205ea0b19dc343e69f5d8701e09e\"\u003e\u003ccode\u003e5fbd3a7\u003c/code\u003e\u003c/a\u003e sync with rtfd 15.10.0 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/740\"\u003e#740\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/fdb4b720e34d539589180ccbb68ac6cd04d8c927\"\u003e\u003ccode\u003efdb4b72\u003c/code\u003e\u003c/a\u003e update copyright for 2026, urllib3 to 2.6.0 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/738\"\u003e#738\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/e8c4221ffe177c48e50a569c8a72e669f7bd1ac1\"\u003e\u003ccode\u003ee8c4221\u003c/code\u003e\u003c/a\u003e avoid numpy segfault for 3.15.0a3 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/737\"\u003e#737\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/d948ecd748772f2812361982ec1496da0cd47b53\"\u003e\u003ccode\u003ed948ecd\u003c/code\u003e\u003c/a\u003e ensure valid class qualname in getsource (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/733\"\u003e#733\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/a843f9013fab9a2cccedf1cec32e39aad1a81cad\"\u003e\u003ccode\u003ea843f90\u003c/code\u003e\u003c/a\u003e sync with rtd 15.4.1 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/731\"\u003e#731\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/uqfoundation/dill/commit/08f613da299c61b7a3c6afc95c0d7a71ab63857b\"\u003e\u003ccode\u003e08f613d\u003c/code\u003e\u003c/a\u003e dict and weakref attribute are singletons in 3.15 (\u003ca href=\"https://redirect.github.com/uqfoundation/dill/issues/728\"\u003e#728\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/uqfoundation/dill/compare/0.4.0...0.4.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `evalidate` from 2.0.5 to 2.1.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaroslaff/evalidate/releases\"\u003eevalidate's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.1.3 Is/IsNot\u003c/h2\u003e\n\u003cp\u003e2.1.3 \u003ccode\u003eIs\u003c/code\u003e and \u003ccode\u003eIsNot\u003c/code\u003e nodes are whitelisted by default\u003c/p\u003e\n\u003ch2\u003e2.1.1\u003c/h2\u003e\n\u003cp\u003eExpr.eval() accepts both local and global ctx (since 2.1.0)\u003c/p\u003e\n\u003cp\u003eTwo CLI utilities:\njg (json grep, fast small alternative to jq) added\ngenfakeproducts - simple utility to generate JSON lists for tests\u003c/p\u003e\n\u003cp\u003ein 2.1.1 - removed wrong dependency on \u0026quot;requests\u0026quot;\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/yaroslaff/evalidate/commit/411745abd02910f646f0fc215d235ae48fd027fc\"\u003e\u003ccode\u003e411745a\u003c/code\u003e\u003c/a\u003e Is/IsNot whitelisted\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/bc2606c7be297422be3a136d79b68cb2679cc4d1\"\u003e\u003ccode\u003ebc2606c\u003c/code\u003e\u003c/a\u003e [generate] extra\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/77bf1af5385a1dd436f0fc6ea6589fda1a5a2ad4\"\u003e\u003ccode\u003e77bf1af\u003c/code\u003e\u003c/a\u003e removed wrong requests dependency\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/f50a2954124cffa87f69c61e738d75b3fa3a0cec\"\u003e\u003ccode\u003ef50a295\u003c/code\u003e\u003c/a\u003e dependency added: requests\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/a264b9d23cf1d17813bb5cc0c61a35535eff3206\"\u003e\u003ccode\u003ea264b9d\u003c/code\u003e\u003c/a\u003e README.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaroslaff/evalidate/commit/52c0fe8cf097d63c5c288d3e1067ce047923e876\"\u003e\u003ccode\u003e52c0fe8\u003c/code\u003e\u003c/a\u003e Expr accepts ctx_globals/ctx_locals. jg and genfakeproducts CLI tools.\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaroslaff/evalidate/compare/v2.0.5...v2.1.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `greenlet` from 3.2.3 to 3.3.1\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/python-greenlet/greenlet/blob/master/CHANGES.rst\"\u003egreenlet's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e3.3.1 (2026-01-23)\u003c/h1\u003e\n\u003cul\u003e\n\u003cli\u003ePublish Windows ARM binary wheels, where available.\u003c/li\u003e\n\u003cli\u003eFix compilation for 3.14t on Windows.\u003c/li\u003e\n\u003cli\u003ePublish Windows 3.14t binary wheels for Intel...\n\n_Description has been truncated_","html_url":"https://github.com/tdesveaux/buildbot/pull/69","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/tdesveaux%2Fbuildbot/issues/69","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/69/packages"}},{"old_version":"1.2.1","new_version":"2.4.0","update_type":"major","path":null,"pr_created_at":"2026-01-19T14:15:23.000Z","version_change":"1.2.1 → 2.4.0","issue":{"uuid":"3829925712","node_id":"PR_kwDOHfpFZM6-BM2H","number":235,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-19T18:35:37.000Z","author_association":null,"state_reason":null,"created_at":"2026-01-19T14:15:23.000Z","updated_at":"2026-01-19T18:35:39.000Z","time_to_close":15614,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/235","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/235","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/235/packages"}},{"old_version":"1.2.1","new_version":"2.4.0","update_type":"major","path":null,"pr_created_at":"2025-12-29T12:06:17.000Z","version_change":"1.2.1 → 2.4.0","issue":{"uuid":"3767248457","node_id":"PR_kwDOHfpFZM660TUy","number":232,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-29T18:34:47.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-29T12:06:17.000Z","updated_at":"2025-12-29T18:34:49.000Z","time_to_close":23310,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/232","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/232","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/232/packages"}},{"old_version":"1.2.1","new_version":"2.4.0","update_type":"major","path":null,"pr_created_at":"2025-12-01T14:39:10.000Z","version_change":"1.2.1 → 2.4.0","issue":{"uuid":"3681319045","node_id":"PR_kwDOHfpFZM62XRp9","number":228,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-12-01T20:44:38.000Z","author_association":null,"state_reason":null,"created_at":"2025-12-01T14:39:10.000Z","updated_at":"2025-12-01T20:44:40.000Z","time_to_close":21928,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.8","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.4.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.8` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.4.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.4.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.8\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.8\u003c/h2\u003e\n\u003cp\u003eReleased on November 6, 2025.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.14\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAmends missing changelog\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp; 3.13\n\u003cp\u003eFixed\n\u003c/code\u003e\u003c/pre\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eEscaping in docstrings (\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e_)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e.. _\u003ccode\u003e[#608](https://github.com/pyeve/cerberus/issues/608)\u003c/code\u003e: \u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/608\"\u003epyeve/cerberus#608\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/pyeve/cerberus/commit/f2221c5a901bbf8618efb694ef9364bd0882ac9a\"\u003e\u003ccode\u003ef2221c5\u003c/code\u003e\u003c/a\u003e Bumps version to 1.3.8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/e7c995709e9fcdb2036ade9f5bf8f608e8ddf2c3\"\u003e\u003ccode\u003ee7c9957\u003c/code\u003e\u003c/a\u003e Bump github/codeql-action from 2 to 4 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/626\"\u003e#626\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/665562663c367ef4115725087096e9dd059d42cd\"\u003e\u003ccode\u003e6655626\u003c/code\u003e\u003c/a\u003e Bump actions/checkout from 3 to 5 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/625\"\u003e#625\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/4db1211eb2a6fdfc899e9231731c54f60745db92\"\u003e\u003ccode\u003e4db1211\u003c/code\u003e\u003c/a\u003e Bump actions/setup-python from 4 to 6 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/627\"\u003e#627\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/3f86cf410618dc646e0bbd8e7eb89161f0f171b2\"\u003e\u003ccode\u003e3f86cf4\u003c/code\u003e\u003c/a\u003e Adds a dependabot configuration to keep GH Actions up-to-date\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/b46f8816b3ba339eb0016d5632cde711ad8c6f5c\"\u003e\u003ccode\u003eb46f881\u003c/code\u003e\u003c/a\u003e Adds support for Python 3.14 (\u003ca href=\"https://redirect.github.com/pyeve/cerberus/issues/624\"\u003e#624\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7878e60204a4b05d566e5b9a9db0c6bcc9062fe9\"\u003e\u003ccode\u003e7878e60\u003c/code\u003e\u003c/a\u003e GH Actions: Removes Python 3.7 from the test matrix\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/7c9c454bf10fe2a7008220c052c88a425a723ca6\"\u003e\u003ccode\u003e7c9c454\u003c/code\u003e\u003c/a\u003e Updates black config and applies its style\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/1295e100dbaff3d989e7f5c6052419ae68980271\"\u003e\u003ccode\u003e1295e10\u003c/code\u003e\u003c/a\u003e doclinks: Ignores URLs with the stackoverflow.com authority\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\"\u003e\u003ccode\u003ec07c2f9\u003c/code\u003e\u003c/a\u003e Amends CHANGES.rst and bumos to version to 1.3.7\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pyeve/cerberus/compare/1.3.5...1.3.8\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.3.0 to 3.4.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1156\"\u003e#1156\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/bandit/compare/1.7.5...1.7.10\"\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.12.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...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/228","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/228","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/228/packages"}},{"old_version":"2.1.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2025-11-29T20:40:14.000Z","version_change":"2.1.0 → 2.4.0","issue":{"uuid":"3677080084","node_id":"PR_kwDOPrR8PM62JNXM","number":738,"state":"open","title":"chore(deps)(deps): bump hvac from 2.1.0 to 2.4.0","user":"dependabot[bot]","labels":["backend","dependencies","python","priority: high","automated"],"assignees":["GrayGhostDev"],"locked":false,"comments_count":13,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-29T20:40:14.000Z","updated_at":"2025-11-29T20:42:46.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps)(deps)","packages":[{"name":"hvac","old_version":"2.1.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.1.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.1.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/GrayGhostDev/ToolboxAI-Solutions/pull/738","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/GrayGhostDev%2FToolboxAI-Solutions/issues/738","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/738/packages"}},{"old_version":"2.3.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2025-11-27T10:46:16.000Z","version_change":"2.3.0 → 2.4.0","issue":{"uuid":"3670853702","node_id":"PR_kwDOHGh5u8610wID","number":915,"state":"closed","title":"build(deps): bump the pipenv group across 1 directory with 34 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2026-01-13T11:09:04.000Z","author_association":null,"state_reason":null,"created_at":"2025-11-27T10:46:16.000Z","updated_at":"2026-01-13T11:09:06.000Z","time_to_close":4062168,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"build(deps): bump","group_name":"pipenv","update_count":34,"packages":[{"name":"rich-click","old_version":"1.8.8","new_version":"1.9.4","repository_url":"https://github.com/ewels/rich-click"},{"name":"securesystemslib","old_version":"1.3.0","new_version":"1.3.1","repository_url":"https://github.com/secure-systems-lab/securesystemslib"},{"name":"requests","old_version":"2.32.3","new_version":"2.32.5","repository_url":"https://github.com/psf/requests"},{"name":"dynaconf","old_version":"3.2.10","new_version":"3.2.12","repository_url":"https://github.com/dynaconf/dynaconf"},{"name":"isort","old_version":"6.0.1","new_version":"7.0.0","repository_url":"https://github.com/PyCQA/isort"},{"name":"sqlalchemy","old_version":"2.0.40","new_version":"2.0.44","repository_url":"https://github.com/sqlalchemy/sqlalchemy"},{"name":"psycopg2","old_version":"2.9.10","new_version":"2.9.11","repository_url":"https://github.com/psycopg/psycopg2"},{"name":"beaupy","old_version":"3.10.1","new_version":"3.10.2","repository_url":"https://github.com/petereon/beaupy"},{"name":"sigstore","old_version":"3.6.2","new_version":"4.1.0","repository_url":"https://github.com/sigstore/sigstore-python"},{"name":"boto3","old_version":"1.38.8","new_version":"1.41.5","repository_url":"https://github.com/boto/boto3"},{"name":"google-cloud-kms","old_version":"3.4.1","new_version":"3.7.0","repository_url":"https://github.com/googleapis/google-cloud-python"},{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"},{"name":"azure-keyvault-keys","old_version":"4.10.0","new_version":"4.11.0","repository_url":"https://github.com/Azure/azure-sdk-for-python"},{"name":"prompt-toolkit","old_version":"3.0.51","new_version":"3.0.52","repository_url":"https://github.com/prompt-toolkit/python-prompt-toolkit"},{"name":"setuptools","old_version":"80.3.1","new_version":"80.9.0","repository_url":"https://github.com/pypa/setuptools"},{"name":"pykcs11","old_version":"1.5.17","new_version":"1.5.18","repository_url":"https://github.com/LudovicRousseau/PyKCS11"},{"name":"exceptiongroup","old_version":"1.2.2","new_version":"1.3.1","repository_url":"https://github.com/agronholm/exceptiongroup"},{"name":"black","old_version":"25.1.0","new_version":"25.11.0","repository_url":"https://github.com/psf/black"},{"name":"flake8","old_version":"7.2.0","new_version":"7.3.0","repository_url":"https://github.com/pycqa/flake8"},{"name":"tox","old_version":"4.25.0","new_version":"4.32.0","repository_url":"https://github.com/tox-dev/tox"},{"name":"pytest","old_version":"8.3.5","new_version":"9.0.1","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"6.1.1","new_version":"7.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"pytest-xdist","old_version":"3.6.1","new_version":"3.8.0","repository_url":"https://github.com/pytest-dev/pytest-xdist"},{"name":"mypy","old_version":"1.15.0","new_version":"1.18.2","repository_url":"https://github.com/python/mypy"},{"name":"pip","old_version":"25.1.1","new_version":"25.3","repository_url":"https://github.com/pypa/pip"},{"name":"sphinxcontrib-plantuml","old_version":"0.30","new_version":"0.31","repository_url":"https://github.com/sphinx-contrib/plantuml"},{"name":"hatchling","old_version":"1.27.0","new_version":"1.28.0","repository_url":"https://github.com/pypa/hatch"},{"name":"build","old_version":"1.2.2.post1","new_version":"1.3.0","repository_url":"https://github.com/pypa/build"},{"name":"pre-commit","old_version":"4.2.0","new_version":"4.5.0","repository_url":"https://github.com/pre-commit/pre-commit"},{"name":"bandit","old_version":"1.8.3","new_version":"1.9.2","repository_url":"https://github.com/PyCQA/bandit"},{"name":"types-requests","old_version":"2.32.0.20250328","new_version":"2.32.4.20250913","repository_url":"https://github.com/typeshed-internal/stub_uploader"}],"path":null,"ecosystem":"pip"},"body":"Bumps the pipenv group with 31 updates in the / directory:\n\n| Package | From | To |\n| --- | --- | --- |\n| [rich-click](https://github.com/ewels/rich-click) | `1.8.8` | `1.9.4` |\n| [securesystemslib](https://github.com/secure-systems-lab/securesystemslib) | `1.3.0` | `1.3.1` |\n| [requests](https://github.com/psf/requests) | `2.32.3` | `2.32.5` |\n| [dynaconf](https://github.com/dynaconf/dynaconf) | `3.2.10` | `3.2.12` |\n| [isort](https://github.com/PyCQA/isort) | `6.0.1` | `7.0.0` |\n| [sqlalchemy](https://github.com/sqlalchemy/sqlalchemy) | `2.0.40` | `2.0.44` |\n| [psycopg2](https://github.com/psycopg/psycopg2) | `2.9.10` | `2.9.11` |\n| [beaupy](https://github.com/petereon/beaupy) | `3.10.1` | `3.10.2` |\n| [sigstore](https://github.com/sigstore/sigstore-python) | `3.6.2` | `4.1.0` |\n| [boto3](https://github.com/boto/boto3) | `1.38.8` | `1.41.5` |\n| [google-cloud-kms](https://github.com/googleapis/google-cloud-python) | `3.4.1` | `3.7.0` |\n| [hvac](https://github.com/hvac/hvac) | `2.3.0` | `2.4.0` |\n| [azure-keyvault-keys](https://github.com/Azure/azure-sdk-for-python) | `4.10.0` | `4.11.0` |\n| [prompt-toolkit](https://github.com/prompt-toolkit/python-prompt-toolkit) | `3.0.51` | `3.0.52` |\n| [setuptools](https://github.com/pypa/setuptools) | `80.3.1` | `80.9.0` |\n| [pykcs11](https://github.com/LudovicRousseau/PyKCS11) | `1.5.17` | `1.5.18` |\n| [exceptiongroup](https://github.com/agronholm/exceptiongroup) | `1.2.2` | `1.3.1` |\n| [black](https://github.com/psf/black) | `25.1.0` | `25.11.0` |\n| [flake8](https://github.com/pycqa/flake8) | `7.2.0` | `7.3.0` |\n| [tox](https://github.com/tox-dev/tox) | `4.25.0` | `4.32.0` |\n| [pytest](https://github.com/pytest-dev/pytest) | `8.3.5` | `9.0.1` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `6.1.1` | `7.0.0` |\n| [pytest-xdist](https://github.com/pytest-dev/pytest-xdist) | `3.6.1` | `3.8.0` |\n| [mypy](https://github.com/python/mypy) | `1.15.0` | `1.18.2` |\n| [pip](https://github.com/pypa/pip) | `25.1.1` | `25.3` |\n| [sphinxcontrib-plantuml](https://github.com/sphinx-contrib/plantuml) | `0.30` | `0.31` |\n| [hatchling](https://github.com/pypa/hatch) | `1.27.0` | `1.28.0` |\n| [build](https://github.com/pypa/build) | `1.2.2.post1` | `1.3.0` |\n| [pre-commit](https://github.com/pre-commit/pre-commit) | `4.2.0` | `4.5.0` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.8.3` | `1.9.2` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.32.0.20250328` | `2.32.4.20250913` |\n\n\nUpdates `rich-click` from 1.8.8 to 1.9.4\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ewels/rich-click/releases\"\u003erich-click's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.9.4\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Typer 0.20 support\u003c/li\u003e\n\u003cli\u003eFix lack of support for \u003ccode\u003eflag_value=...\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.3\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.3.dev0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.2\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy Windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.2.dev0\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug where running the \u003ccode\u003erich-click\u003c/code\u003e CLI on a \u003ccode\u003e@rich_click.argument()\u003c/code\u003e sometimes caused arguments show up in the option panel when it shouldn't.\u003c/li\u003e\n\u003cli\u003eSlightly reduced horizontal padding of the \u003ccode\u003emodern\u003c/code\u003e theme format.\u003c/li\u003e\n\u003cli\u003eFixed Click 8.3 compatibility with rendering defaults in help text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev1.9.0\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 deprecates support for a lot of old versions of things:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython 3.7 support is removed.\u003c/strong\u003e The minimum supported Python version is 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eClick 7 support is removed.\u003c/strong\u003e The minimum supported Click version is 8.0.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRich 10 and 11 support is removed.\u003c/strong\u003e The minimum supported Rich version is 12.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 introduces a minor breaking change:\nThe \u003ccode\u003eDEFAULT_STRING\u003c/code\u003e, \u003ccode\u003eENVVAR_STRING\u003c/code\u003e, \u003ccode\u003eREQUIRED_STRING\u003c/code\u003e, and \u003ccode\u003eDEPRECATED_STRING\u003c/code\u003e config options are now rendered with \u003ccode\u003eText.from_markup\u003c/code\u003e.\nSo for example, \u003ccode\u003eREQUIRED_STRING = \u0026quot;[required]\u0026quot;\u003c/code\u003e would be rendered as Rich markup.\nYou must now escape the rich markup: \u003ccode\u003eREQUIRED_STRING = \u0026quot;\\\\[required]\u0026quot;\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003eBig changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eThemes!\u003c/strong\u003e Check them out with \u003ccode\u003erich-click --themes\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTyper support:\u003c/strong\u003e \u003ccode\u003erich-click typer_app --help\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRichPanels\u003c/strong\u003e API introduced. This replaces the \u0026quot;groups\u0026quot; feature going forward (although groups will continue to be supported).\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@click.option_panel()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@click.command_panel()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIDE tab completion support for decorators\u003c/strong\u003e. Now you should no longer need to guess what goes in \u003ccode\u003e@click.option()\u003c/code\u003e or \u003ccode\u003e@click.command(context_settings=...)\u003c/code\u003e etc.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHelp for arguments:\u003c/strong\u003e \u003ccode\u003ehelp=\u003c/code\u003e is now a valid kwarg for \u003ccode\u003e@click.argument()\u003c/code\u003e decorator. See docs for more information.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSmall changes:\u003c/strong\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/ewels/rich-click/blob/main/CHANGELOG.md\"\u003erich-click's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.9.4 (2025-10-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdded Typer 0.20 support\u003c/li\u003e\n\u003cli\u003eFix lack of support for \u003ccode\u003eflag_value=...\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.3 (2025-10-09)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed subcommand discovery in help text. Behavior should now be the same as \u003ccode\u003e1.8\u003c/code\u003e. [\u003ca href=\"https://redirect.github.com/ewels/rich-click/pull/304\"\u003e#304\u003c/a\u003e]\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.2 (2025-10-04)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed legacy windows rendering\u003c/li\u003e\n\u003cli\u003eFix issue with parent \u003ccode\u003eclick.Group\u003c/code\u003e and child \u003ccode\u003erich_click.RichCommand\u003c/code\u003e error formatter not resolving.\u003c/li\u003e\n\u003cli\u003eAdd headers to tables (by default these are not shown).\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.1 (2025-09-20)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug where running the \u003ccode\u003erich-click\u003c/code\u003e CLI on a \u003ccode\u003e@rich_click.argument()\u003c/code\u003e sometimes caused arguments show up in the option panel when it shouldn't.\u003c/li\u003e\n\u003cli\u003eSlightly reduced horizontal padding of the \u003ccode\u003emodern\u003c/code\u003e theme format.\u003c/li\u003e\n\u003cli\u003eFixed Click 8.3 compatibility with rendering defaults in help text.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 1.9.0 (2025-09-16)\u003c/h2\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 deprecates support for a lot of old versions of things:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003ePython 3.7 support is removed.\u003c/strong\u003e The minimum supported Python version is 3.8.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eClick 7 support is removed.\u003c/strong\u003e The minimum supported Click version is 8.0.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRich 10 and 11 support is removed.\u003c/strong\u003e The minimum supported Rich version is 12.\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/blockquote\u003e\n\u003cblockquote\u003e\n\u003cp\u003e[!WARNING]\nVersion 1.9.0 introduces a minor breaking change:\nThe \u003ccode\u003eDEFAULT_STRING\u003c/code\u003e, \u003ccode\u003eENVVAR_STRING\u003c/code\u003e, \u003ccode\u003eREQUIRED_STRING\u003c/code\u003e, and \u003ccode\u003eDEPRECATED_STRING\u003c/code\u003e config options are now rendered with \u003ccode\u003eText.from_markup\u003c/code\u003e.\nSo for example, \u003ccode\u003eREQUIRED_STRING = \u0026quot;[required]\u0026quot;\u003c/code\u003e would be rendered as Rich markup.\nYou must now escape the rich markup: \u003ccode\u003eREQUIRED_STRING = \u0026quot;\\\\[required]\u0026quot;\u003c/code\u003e\u003c/p\u003e\n\u003c/blockquote\u003e\n\u003cp\u003e\u003cstrong\u003eBig changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003eThemes!\u003c/strong\u003e Check them out with \u003ccode\u003erich-click --themes\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eTyper support:\u003c/strong\u003e \u003ccode\u003erich-click typer_app --help\u003c/code\u003e.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eRichPanels\u003c/strong\u003e API introduced. This replaces the \u0026quot;groups\u0026quot; feature going forward (although groups will continue to be supported).\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003e@click.option_panel()\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e@click.command_panel()\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eIDE tab completion support for decorators\u003c/strong\u003e. Now you should no longer need to guess what goes in \u003ccode\u003e@click.option()\u003c/code\u003e or \u003ccode\u003e@click.command(context_settings=...)\u003c/code\u003e etc.\u003c/li\u003e\n\u003cli\u003e\u003cstrong\u003eHelp for arguments:\u003c/strong\u003e \u003ccode\u003ehelp=\u003c/code\u003e is now a valid kwarg for \u003ccode\u003e@click.argument()\u003c/code\u003e decorator. See docs for more information.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eSmall changes:\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u0026quot;Deprecated\u0026quot; text properly handled and stylized in all places.\u003c/li\u003e\n\u003cli\u003eCommand aliases: \u003ccode\u003e@cli.command(aliases=[\u0026quot;foo\u0026quot;])\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/ewels/rich-click/commit/7577bb99779c3789f252bc59617daaefdd81cf75\"\u003e\u003ccode\u003e7577bb9\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/309\"\u003e#309\u003c/a\u003e from dwreeves/1.9.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/69152920143a12f4f9c47ccf9056a164048b7935\"\u003e\u003ccode\u003e6915292\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/d1d294c8868d5b363e7ae96608722cb50223f3ec\"\u003e\u003ccode\u003ed1d294c\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/308\"\u003e#308\u003c/a\u003e from dwreeves/fix-flag-value-issue\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/2bcbd9f7c716079437c3f6024ad089335a184889\"\u003e\u003ccode\u003e2bcbd9f\u003c/code\u003e\u003c/a\u003e update\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/fdbe0267dd492cfbc07817b0f2de5090c2e65b1a\"\u003e\u003ccode\u003efdbe026\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/306\"\u003e#306\u003c/a\u003e from omad/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/f55d3b8cb01feaaee720498bcea3581c859867cb\"\u003e\u003ccode\u003ef55d3b8\u003c/code\u003e\u003c/a\u003e Merge branch 'patch-1' of github.com-dwreeves:omad/rich-click into patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/515a091913fbe70a0172143ce7feed253e3763db\"\u003e\u003ccode\u003e515a091\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/ewels/rich-click/issues/307\"\u003e#307\u003c/a\u003e from dwreeves/typer-0.20-support\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/49dff4b13a1357307386edc73c540ecbda1c4854\"\u003e\u003ccode\u003e49dff4b\u003c/code\u003e\u003c/a\u003e Fix Typer 0.20\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/78793440af87f4e9b9204bbff90bfa2bf6fedbc2\"\u003e\u003ccode\u003e7879344\u003c/code\u003e\u003c/a\u003e Fix example links for documentation site\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/ewels/rich-click/commit/0ea0e0a13b199cc1cf28ece1338bf0838772727b\"\u003e\u003ccode\u003e0ea0e0a\u003c/code\u003e\u003c/a\u003e Bump to 1.9.3\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/ewels/rich-click/compare/v1.8.8...v1.9.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `securesystemslib` from 1.3.0 to 1.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/releases\"\u003esecuresystemslib's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev1.3.1\u003c/h2\u003e\n\u003cp\u003eSee \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/blob/v1.3.1/CHANGELOG.md\"\u003eCHANGELOG.md\u003c/a\u003e for details.\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/secure-systems-lab/securesystemslib/blob/main/CHANGELOG.md\"\u003esecuresystemslib's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003esecuresystemslib v1.3.1\u003c/h2\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAWSSigner: Don't send payload to AWS for signing, send hash only (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1026\"\u003e#1026\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eSet Development status classifier to \u0026quot;production/stable\u0026quot; in Python\npackaging (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1030\"\u003e#1030\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eInternals\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eMinor infrastructure changes (\u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1005\"\u003e#1005\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1013\"\u003e#1013\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/secure-systems-lab/securesystemslib/commit/6f774190b90f0aa9d5d7e077680adbaa29c5cd6c\"\u003e\u003ccode\u003e6f77419\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1030\"\u003e#1030\u003c/a\u003e from jku/release-prep-1.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/b71cc5271a9a7b6898c79c1a12393d90996d5388\"\u003e\u003ccode\u003eb71cc52\u003c/code\u003e\u003c/a\u003e Prepare release 1.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/f6835096a845acf25dc3675105937be2565b9e66\"\u003e\u003ccode\u003ef683509\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1026\"\u003e#1026\u003c/a\u003e from ArkadiuszNitkaSWI/fix-aws-signer\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/97527198c7bf5b75ef9fb8996412df5453995080\"\u003e\u003ccode\u003e9752719\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1027\"\u003e#1027\u003c/a\u003e from secure-systems-lab/dependabot/pip/test-and-lint...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/4226b762bf3333b5947af9cf29ed751afbfd69b9\"\u003e\u003ccode\u003e4226b76\u003c/code\u003e\u003c/a\u003e build(deps): bump the test-and-lint-dependencies group with 4 updates\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/6394e3e467c091a06ee95dad674dec7e991758c8\"\u003e\u003ccode\u003e6394e3e\u003c/code\u003e\u003c/a\u003e Review changes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/dee9a831390c9a69c0e66f7c34779e9eea6dcc6d\"\u003e\u003ccode\u003edee9a83\u003c/code\u003e\u003c/a\u003e linter\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/07b0fc780d9d1f4c0843ce3e2096e1216814bd06\"\u003e\u003ccode\u003e07b0fc7\u003c/code\u003e\u003c/a\u003e update .gitignore\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/e8158a4eb131760714290b9839e3e40f9cd4229c\"\u003e\u003ccode\u003ee8158a4\u003c/code\u003e\u003c/a\u003e Fix AWS signer, allow messages bigger than 4kB\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/commit/e23f855ddecb97d4baddffc068e9591451b9aa72\"\u003e\u003ccode\u003ee23f855\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/secure-systems-lab/securesystemslib/issues/1023\"\u003e#1023\u003c/a\u003e from secure-systems-lab/dependabot/pip/dependencies-...\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/secure-systems-lab/securesystemslib/compare/v1.3.0...v1.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `click` from 8.1.8 to 8.3.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/releases\"\u003eclick's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e8.3.1\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.1 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.1/\"\u003ehttps://pypi.org/project/click/8.3.1/\u003c/a\u003e\nChanges: \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-1\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-1\u003c/a\u003e\nMilestone: \u003ca href=\"https://github.com/pallets/click/milestone/28\"\u003ehttps://github.com/pallets/click/milestone/28\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDon't discard pager arguments by correctly using \u003ccode\u003esubprocess.Popen\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3039\"\u003e#3039\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3055\"\u003e#3055\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003eSentinel.UNSET\u003c/code\u003e default values by \u003ccode\u003eNone\u003c/code\u003e as they're passed through the \u003ccode\u003eContext.invoke()\u003c/code\u003e method. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3066\"\u003e#3066\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3065\"\u003e#3065\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3068\"\u003e#3068\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of \u003ccode\u003eSentinel.UNSET\u003c/code\u003e happening too early, which caused incorrect behavior for multiple parameters using the same name. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3071\"\u003e#3071\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3079\"\u003e#3079\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix rendering when \u003ccode\u003eprompt\u003c/code\u003e and \u003ccode\u003econfirm\u003c/code\u003e parameter \u003ccode\u003eprompt_suffix\u003c/code\u003e is empty. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3019\"\u003e#3019\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3021\"\u003e#3021\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eWhen \u003ccode\u003eSentinel.UNSET\u003c/code\u003e is found during parsing, it will skip calls to \u003ccode\u003etype_cast_value\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3069\"\u003e#3069\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3090\"\u003e#3090\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when looking up for other parameters through the context inside parameter callbacks. \u003ca href=\"https://redirect.github.com/pallets/click/issues/3136\"\u003e#3136\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3137\"\u003e#3137\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.0\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.3.0 feature release. A feature release may include new features, remove previously deprecated code, add new deprecation, or introduce potentially breaking changes.\u003c/p\u003e\n\u003cp\u003eWe encourage everyone to upgrade. You can read more about our \u003ca href=\"https://palletsprojects.com/versions\"\u003eVersion Support Policy\u003c/a\u003e on our website.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.3.0/\"\u003ehttps://pypi.org/project/click/8.3.0/\u003c/a\u003e\nChanges:  \u003ca href=\"https://click.palletsprojects.com/page/changes/#version-8-3-0\"\u003ehttps://click.palletsprojects.com/page/changes/#version-8-3-0\u003c/a\u003e\nMilestone \u003ca href=\"https://github.com/pallets/click/milestone/27\"\u003ehttps://github.com/pallets/click/milestone/27\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eImproved flag option handling\u003c/strong\u003e: Reworked the relationship between \u003ccode\u003eflag_value\u003c/code\u003e\nand \u003ccode\u003edefault\u003c/code\u003e parameters for better consistency:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter value is now preserved as-is and passed directly\nto CLI functions (no more unexpected transformations)\u003c/li\u003e\n\u003cli\u003eException: flag options with \u003ccode\u003edefault=True\u003c/code\u003e maintain backward compatibility\nby defaulting to their \u003ccode\u003eflag_value\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter can now be any type (\u003ccode\u003ebool\u003c/code\u003e, \u003ccode\u003eNone\u003c/code\u003e, etc.)\u003c/li\u003e\n\u003cli\u003eFixes inconsistencies reported in: \u003ca href=\"https://redirect.github.com/pallets/click/issues/1992\"\u003e#1992\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/2514\"\u003e#2514\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2610\"\u003e#2610\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3024\"\u003e#3024\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3030\"\u003e#3030\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003edefault\u003c/code\u003e to be set on \u003ccode\u003eArgument\u003c/code\u003e for \u003ccode\u003enargs = -1\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2164\"\u003e#2164\u003c/a\u003e\n\u003ca href=\"https://redirect.github.com/pallets/click/issues/3030\"\u003e#3030\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for \u003ccode\u003enargs\u003c/code\u003e option in combination with flag\noption \u003ca href=\"https://redirect.github.com/pallets/click/issues/2813\"\u003e#2813\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for nargs option in combination with flag option \u003ca href=\"https://redirect.github.com/pallets/click/issues/2813\"\u003e#2813\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix handling of quoted and escaped parameters in Fish autocompletion. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2995\"\u003e#2995\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/3013\"\u003e#3013\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLazily import \u003ccode\u003eshutil\u003c/code\u003e.  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3023\"\u003e#3023\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eProperly forward exception information to resources registered with\n\u003ccode\u003eclick.core.Context.with_resource()\u003c/code\u003e. \u003ca href=\"https://redirect.github.com/pallets/click/issues/2447\"\u003e#2447\u003c/a\u003e  \u003ca href=\"https://redirect.github.com/pallets/click/issues/3058\"\u003e#3058\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix regression related to EOF handling in CliRunner.  \u003ca href=\"https://redirect.github.com/pallets/click/issues/2939\"\u003e#2939\u003c/a\u003e \u003ca href=\"https://redirect.github.com/pallets/click/issues/2940\"\u003e#2940\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.2.2\u003c/h2\u003e\n\u003cp\u003eThis is the Click 8.2.2 fix release, which fixes bugs but does not otherwise change behavior and should not result in breaking changes compared to the latest feature release.\u003c/p\u003e\n\u003cp\u003ePyPI: \u003ca href=\"https://pypi.org/project/click/8.2.2/\"\u003ehttps://pypi.org/project/click/8.2.2/\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\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pallets/click/blob/main/CHANGES.rst\"\u003eclick's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 8.3.1\u003c/h2\u003e\n\u003cp\u003eReleased 2025-11-15\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eDon't discard pager arguments by correctly using \u003ccode\u003esubprocess.Popen\u003c/code\u003e. :issue:\u003ccode\u003e3039\u003c/code\u003e\n:pr:\u003ccode\u003e3055\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eReplace \u003ccode\u003eSentinel.UNSET\u003c/code\u003e default values by \u003ccode\u003eNone\u003c/code\u003e as they're passed through\nthe \u003ccode\u003eContext.invoke()\u003c/code\u003e method. :issue:\u003ccode\u003e3066\u003c/code\u003e :issue:\u003ccode\u003e3065\u003c/code\u003e :pr:\u003ccode\u003e3068\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix conversion of \u003ccode\u003eSentinel.UNSET\u003c/code\u003e happening too early, which caused incorrect\nbehavior for multiple parameters using the same name. :issue:\u003ccode\u003e3071\u003c/code\u003e :pr:\u003ccode\u003e3079\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eHide \u003ccode\u003eSentinel.UNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e when looking up for other parameters\nthrough the context inside parameter callbacks. :issue:\u003ccode\u003e3136\u003c/code\u003e :pr:\u003ccode\u003e3137\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eFix rendering when \u003ccode\u003eprompt\u003c/code\u003e and \u003ccode\u003econfirm\u003c/code\u003e parameter \u003ccode\u003eprompt_suffix\u003c/code\u003e is\nempty. :issue:\u003ccode\u003e3019\u003c/code\u003e :pr:\u003ccode\u003e3021\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eWhen \u003ccode\u003eSentinel.UNSET\u003c/code\u003e is found during parsing, it will skip calls to\n\u003ccode\u003etype_cast_value\u003c/code\u003e. :issue:\u003ccode\u003e3069\u003c/code\u003e :pr:\u003ccode\u003e3090\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 8.3.0\u003c/h2\u003e\n\u003cp\u003eReleased 2025-09-17\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003eImproved flag option handling\u003c/strong\u003e: Reworked the relationship between \u003ccode\u003eflag_value\u003c/code\u003e\nand \u003ccode\u003edefault\u003c/code\u003e parameters for better consistency:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter value is now preserved as-is and passed directly\nto CLI functions (no more unexpected transformations)\u003c/li\u003e\n\u003cli\u003eException: flag options with \u003ccode\u003edefault=True\u003c/code\u003e maintain backward compatibility\nby defaulting to their \u003ccode\u003eflag_value\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003eThe \u003ccode\u003edefault\u003c/code\u003e parameter can now be any type (\u003ccode\u003ebool\u003c/code\u003e, \u003ccode\u003eNone\u003c/code\u003e, etc.)\u003c/li\u003e\n\u003cli\u003eFixes inconsistencies reported in: :issue:\u003ccode\u003e1992\u003c/code\u003e :issue:\u003ccode\u003e2514\u003c/code\u003e :issue:\u003ccode\u003e2610\u003c/code\u003e\n:issue:\u003ccode\u003e3024\u003c/code\u003e :pr:\u003ccode\u003e3030\u003c/code\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eAllow \u003ccode\u003edefault\u003c/code\u003e to be set on \u003ccode\u003eArgument\u003c/code\u003e for \u003ccode\u003enargs = -1\u003c/code\u003e. :issue:\u003ccode\u003e2164\u003c/code\u003e\n:pr:\u003ccode\u003e3030\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eShow correct auto complete value for \u003ccode\u003enargs\u003c/code\u003e option in combination with flag\noption :issue:\u003ccode\u003e2813\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix handling of quoted and escaped parameters in Fish autocompletion. :issue:\u003ccode\u003e2995\u003c/code\u003e :pr:\u003ccode\u003e3013\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eLazily import \u003ccode\u003eshutil\u003c/code\u003e. :pr:\u003ccode\u003e3023\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eProperly forward exception information to resources registered with\n\u003ccode\u003eclick.core.Context.with_resource()\u003c/code\u003e. :issue:\u003ccode\u003e2447\u003c/code\u003e :pr:\u003ccode\u003e3058\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFix regression related to EOF handling in \u003ccode\u003eCliRunner\u003c/code\u003e. :issue:\u003ccode\u003e2939\u003c/code\u003e :pr:\u003ccode\u003e2940\u003c/code\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eVersion 8.2.2\u003c/h2\u003e\n\u003cp\u003eReleased 2025-07-31\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix reconciliation of \u003ccode\u003edefault\u003c/code\u003e, \u003ccode\u003eflag_value\u003c/code\u003e and \u003ccode\u003etype\u003c/code\u003e parameters for\nflag options, as well as parsing and normalization of environment variables.\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/pallets/click/commit/1d038f270701498433cb432f54db89f95f07a845\"\u003e\u003ccode\u003e1d038f2\u003c/code\u003e\u003c/a\u003e release version 8.3.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/03f3889f505d0c9ca4f9d6810f9e4ba2799f2a66\"\u003e\u003ccode\u003e03f3889\u003c/code\u003e\u003c/a\u003e Fix Ruff UP038 warning (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3141\"\u003e#3141\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/3867781222cb63693ca67df94352d29d8e6e2770\"\u003e\u003ccode\u003e3867781\u003c/code\u003e\u003c/a\u003e Fix Ruff UP038 warning\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/b91bb9548a5617b1197add95e084d569f57149c3\"\u003e\u003ccode\u003eb91bb95\u003c/code\u003e\u003c/a\u003e Provide altered context to callbacks to hide \u003ccode\u003eUNSET\u003c/code\u003e values as \u003ccode\u003eNone\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3137\"\u003e#3137\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/437e1e3295c7ec979fc1bf285bb402ca20d847e7\"\u003e\u003ccode\u003e437e1e3\u003c/code\u003e\u003c/a\u003e Temporarily provide a fake context to the callback to hide \u003ccode\u003eUNSET\u003c/code\u003e values as ...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/ea70da487b05d6bb758d472a3a9ffab4a5b7fcd5\"\u003e\u003ccode\u003eea70da4\u003c/code\u003e\u003c/a\u003e Don't test using a file in docs/ (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3102\"\u003e#3102\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/e27b307462b725722f620c69dd1d5509c032d18a\"\u003e\u003ccode\u003ee27b307\u003c/code\u003e\u003c/a\u003e Make \u003ccode\u003euv run --all-extras pyright --verifytypes click\u003c/code\u003e pass (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3072\"\u003e#3072\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/a92c573f3195c9da3058eadf1735d38af186d22c\"\u003e\u003ccode\u003ea92c573\u003c/code\u003e\u003c/a\u003e Fix test_edit to work with BSD sed (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3129\"\u003e#3129\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/bd131e1ab63da2281d6dd9b8205ad2eb5a085468\"\u003e\u003ccode\u003ebd131e1\u003c/code\u003e\u003c/a\u003e Fix test_edit to work with BSD sed\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pallets/click/commit/0b5c6b75f617e6ee2f9f6dcd071b8a4bf183d1ed\"\u003e\u003ccode\u003e0b5c6b7\u003c/code\u003e\u003c/a\u003e Add Best practices section  (\u003ca href=\"https://redirect.github.com/pallets/click/issues/3127\"\u003e#3127\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pallets/click/compare/8.1.8...8.3.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `rich` from 14.0.0 to 14.2.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/Textualize/rich/releases\"\u003erich's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eThe Easy as Pi release\u003c/h2\u003e\n\u003cp\u003eThis release bumps Python compatibility to the just-released Python 3.14.\u003c/p\u003e\n\u003ch2\u003e[14.2.0] - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython3.14 compatibility \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3861\"\u003eTextualize/rich#3861\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eThe Lively Release\u003c/h2\u003e\n\u003cp\u003eLive objects may now be nested. Previously a progress bar inside another progress context would fail. See the changelog below for this and other changes.\u003c/p\u003e\n\u003ch2\u003e[14.1.0] - 2025-06-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003etyping_extensions\u003c/code\u003e from runtime dependencies \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3763\"\u003eTextualize/rich#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLive objects (including Progress) may now be nested \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3768\"\u003eTextualize/rich#3768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded padding property to Syntax which returns a tuple of four integers \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed extraction of recursive exceptions \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3772\"\u003eTextualize/rich#3772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed padding applied to Syntax \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ePanel\u003c/code\u003e title missing the panel background style \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3569\"\u003eTextualize/rich#3569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eTTY_INTERACTIVE\u003c/code\u003e environment variable to force interactive mode off or on \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3777\"\u003eTextualize/rich#3777\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/Textualize/rich/blob/master/CHANGELOG.md\"\u003erich's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e[14.2.0] - 2025-10-09\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePython3.14 compatibility \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3861\"\u003eTextualize/rich#3861\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e[14.1.0] - 2025-06-25\u003c/h2\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003etyping_extensions\u003c/code\u003e from runtime dependencies \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3763\"\u003eTextualize/rich#3763\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eLive objects (including Progress) may now be nested \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3768\"\u003eTextualize/rich#3768\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdded padding property to Syntax which returns a tuple of four integers \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFixed\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFixed extraction of recursive exceptions \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3772\"\u003eTextualize/rich#3772\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed padding applied to Syntax \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3782\"\u003eTextualize/rich#3782\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFixed \u003ccode\u003ePanel\u003c/code\u003e title missing the panel background style \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3569\"\u003eTextualize/rich#3569\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded \u003ccode\u003eTTY_INTERACTIVE\u003c/code\u003e environment variable to force interactive mode off or on \u003ca href=\"https://redirect.github.com/Textualize/rich/pull/3777\"\u003eTextualize/rich#3777\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/Textualize/rich/commit/494f83c923ca54ecc943bf5e60c0004e65fbb54e\"\u003e\u003ccode\u003e494f83c\u003c/code\u003e\u003c/a\u003e changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/d476e85a19ea62966a25f6df0e0a287da52ab35f\"\u003e\u003ccode\u003ed476e85\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3862\"\u003e#3862\u003c/a\u003e from GeroZayas/docs/es-readme-sync-2025-10\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/518daaa39c17bad485c970bf229424784fbdf044\"\u003e\u003ccode\u003e518daaa\u003c/code\u003e\u003c/a\u003e docs(es): sync README.es.md (macOS, 16 colors, Python 3.8+)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/cd5074f87804aac2f6e5c6143e1cac5e3a0bddc5\"\u003e\u003ccode\u003ecd5074f\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3861\"\u003e#3861\u003c/a\u003e from Textualize/python314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/041406ca9b60af8fcc00cd7fc1b2973ab51eb851\"\u003e\u003ccode\u003e041406c\u003c/code\u003e\u003c/a\u003e removed asv\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/655b5210cb1403100a646d167cf027eec760dd9f\"\u003e\u003ccode\u003e655b521\u003c/code\u003e\u003c/a\u003e test fixes\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/27c2d2df7523315de4b81577d414db8c1c7312f9\"\u003e\u003ccode\u003e27c2d2d\u003c/code\u003e\u003c/a\u003e bump for Python3.14\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/ea9d4db5d84b4e834979304e3053bf757daae322\"\u003e\u003ccode\u003eea9d4db\u003c/code\u003e\u003c/a\u003e Update feature_request.md\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/2dca1b70359dac61e1bbfb6f14ebe19a5ab79c3d\"\u003e\u003ccode\u003e2dca1b7\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/Textualize/rich/issues/3808\"\u003e#3808\u003c/a\u003e from Textualize/bump1410\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/Textualize/rich/commit/19b6dddd807b887eaaf313174fff3eb2e22cda25\"\u003e\u003ccode\u003e19b6ddd\u003c/code\u003e\u003c/a\u003e version bump\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/Textualize/rich/compare/v14.0.0...v14.2.0\"\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.3 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\u003ch2\u003ev2.32.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\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/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\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 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.3...v2.32.5\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `dynaconf` from 3.2.10 to 3.2.12\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/dynaconf/dynaconf/releases\"\u003edynaconf's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e3.2.12\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eIncremental improvment to access performance by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1304\"\u003edynaconf/dynaconf#1304\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efix: get method to return Any type. by \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1314\"\u003edynaconf/dynaconf#1314\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eperf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function by \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/pull/1326\"\u003edynaconf/dynaconf#1326\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.11...3.2.12\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e3.2.11\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003eRelease version 3.2.11\u003c/p\u003e\n\u003cp\u003eShortlog of commits since last release:\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eBruno Rocha (9): \u003ca href=\"https://github.com/rochacbruno\"\u003e\u003ccode\u003e@​rochacbruno\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix(cli): handle empty hooks and boolean environments.\u003c/li\u003e\n\u003cli\u003efix: Better way for CLI to find the Django Settings\u003c/li\u003e\n\u003cli\u003efix: windows CI\u003c/li\u003e\n\u003cli\u003efeat: Run CLI as module with \u003ccode\u003epython -m dynaconf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1290\"\u003e#1290\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: use sys.argv instead of click.get_os_args (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1292\"\u003e#1292\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: \u003ccode\u003e-k\u003c/code\u003e must exit code 1 when key do not exist (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1293\"\u003e#1293\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efeat: envless load file (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1295\"\u003e#1295\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003efix: add correct supported python version to 3.2.x\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003eFabricio Aguiar (1): \u003ca href=\"https://github.com/fao89\"\u003e\u003ccode\u003e@​fao89\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003efix: make raw variables private (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1287\"\u003e#1287\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003ePedro Brochado (1): \u003ca href=\"https://github.com/pedro-psb\"\u003e\u003ccode\u003e@​pedro-psb\u003c/code\u003e\u003c/a\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003edocs: clarification on redis hash title when using custom envvar prefixes (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1273\"\u003e#1273\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eMilestone \u003ca href=\"https://github.com/dynaconf/dynaconf/milestone/31?closed=1\"\u003ehttps://github.com/dynaconf/dynaconf/milestone/31?closed=1\u003c/a\u003e\u003c/p\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.11\"\u003ehttps://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.11\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/dynaconf/dynaconf/blob/3.2.12/CHANGELOG.md\"\u003edynaconf's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/pedro-psb/dynaconf/releases/tag/3.2.12\"\u003e3.2.12\u003c/a\u003e - 2025-10-10\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eget method to return Any type.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eremove unnecessary recursive evaluation call on Settings.get. \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eimprove performance of settings access in a loop (part 1). \u003cem\u003eBy Pedro Brochado\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/releases/tag/3.2.11\"\u003e3.2.11\u003c/a\u003e - 2025-05-06\u003c/h2\u003e\n\u003ch3\u003eBug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd correct supported python version to 3.2.x. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e-k\u003c/code\u003e must exit code 1 when key do not exist (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1293\"\u003e#1293\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003euse sys.argv instead of click.get_os_args (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1292\"\u003e#1292\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003ewindows CI. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003emake raw variables private (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1287\"\u003e#1287\u003c/a\u003e). \u003cem\u003eBy Fabricio Aguiar\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eBetter way for CLI to find the Django Settings. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003ehandle empty hooks and boolean environments.. \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eFeatures\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eenvless load file (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1295\"\u003e#1295\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003cli\u003eRun CLI as module with \u003ccode\u003epython -m dynaconf\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1290\"\u003e#1290\u003c/a\u003e). \u003cem\u003eBy Bruno Rocha\u003c/em\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eDocs\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eclarification on redis hash title when using custom envvar prefixes (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1273\"\u003e#1273\u003c/a\u003e). \u003cem\u003eBy Pedro Brochado\u003c/em\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/dynaconf/dynaconf/commit/7606f351ac460b15c56e7a538300de4a501c56e7\"\u003e\u003ccode\u003e7606f35\u003c/code\u003e\u003c/a\u003e Release version 3.2.12\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/da44e5182940299dd90ca3e2a0e0e3c23cb9ebf7\"\u003e\u003ccode\u003eda44e51\u003c/code\u003e\u003c/a\u003e perf: add lru caching to \u003ccode\u003efind_the_correct_casing\u003c/code\u003e function (\u003ca href=\"https://redirect.github.com/dynaconf/dynaconf/issues/1326\"\u003e#1326\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/b75eda0da141bdc29f707f2cb0c29e06b03a72bb\"\u003e\u003ccode\u003eb75eda0\u003c/code\u003e\u003c/a\u003e fix: get method to return Any type.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/4f3df1a47bcb71feddf7565f603e7994c65ede65\"\u003e\u003ccode\u003e4f3df1a\u003c/code\u003e\u003c/a\u003e misc: add some profile/perf scripts\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/420acebf64e77ba475df94dfd7d409207e5e239d\"\u003e\u003ccode\u003e420aceb\u003c/code\u003e\u003c/a\u003e refactor: merge \u003cem\u003esafe\u003c/em\u003e{get,copy} into .get and .copy\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/18c0c8422dc9651d57c76d1b098ad6fb3f75c09d\"\u003e\u003ccode\u003e18c0c84\u003c/code\u003e\u003c/a\u003e fix: remove unnecessary recursive evaluation call on Settings.get\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/0fde96f2e0b71309e63800ddac8eceda062155a9\"\u003e\u003ccode\u003e0fde96f\u003c/code\u003e\u003c/a\u003e refactor: rewrite decorator as explicit call\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/52efd9ed78d2187550e03a2ae5008661d5e28df9\"\u003e\u003ccode\u003e52efd9e\u003c/code\u003e\u003c/a\u003e Bump to version 3.2.12-dev0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/c61da8fd191196c1341bd3d8a8dd895e9cf671ae\"\u003e\u003ccode\u003ec61da8f\u003c/code\u003e\u003c/a\u003e Release version 3.2.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/dynaconf/dynaconf/commit/f8189fb6c130ff4709450e7daebcf1c174aea248\"\u003e\u003ccode\u003ef8189fb\u003c/code\u003e\u003c/a\u003e fix: add correct supported python version to 3.2.x\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/dynaconf/dynaconf/compare/3.2.10...3.2.12\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `isort` from 6.0.1 to 7.0.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\u003e7.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\u003eDrop support for Python 3.9 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\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\u003eShow absolute paths in skipped file messages (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2416\"\u003e#2416\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\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\u003eSome fixes for Python 3.14 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTest on \u003ccode\u003e3.14\u003c/code\u003e and fix any bugs (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2425\"\u003e#2425\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 CHANGELOG.md + Fix Formatting and Grammar (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2419\"\u003e#2419\u003c/a\u003e) \u003ca href=\"https://github.com/lukbrew25\"\u003e\u003ccode\u003e@​lukbrew25\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eFix output of hanging indent for long lines with noqa (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2407\"\u003e#2407\u003c/a\u003e) \u003ca href=\"https://github.com/matan1008\"\u003e\u003ccode\u003e@​matan1008\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\u003eFormat with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eTarget 3.10 for \u003ccode\u003eruff\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\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 development dependencies to latest version (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2426\"\u003e#2426\u003c/a\u003e) \u003ca href=\"https://github.com/DanielNoord\"\u003e\u003ccode\u003e@​DanielNoord\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: update pre-commit examples to version 6.1.0 (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2413\"\u003e#2413\u003c/a\u003e) \u003ca href=\"https://github.com/pranlawate\"\u003e\u003ccode\u003e@​pranlawate\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSmall cleanup for developer environment (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2418\"\u003e#2418\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:package: Dependencies\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump actions/setup-python from 5 to 6 in the github-actions group (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2411\"\u003e#2411\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.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\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\u003ch3\u003eUnreleased\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved \u003ccode\u003e--old-finders\u003c/code\u003e and \u003ccode\u003e--magic-placement\u003c/code\u003e flags and \u003ccode\u003eold_finders\u003c/code\u003e configuration option. The legacy finder logic that relied on environment introspection has been removed (\u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2445\"\u003e#2445\u003c/a\u003e) \u003ca href=\"https://github.com/joao-faria-dev\"\u003e\u003ccode\u003e@​joao-faria-dev\u003c/code\u003e\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e6.1.0 October 1 2025\u003c/h3\u003e\n\u003cul\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\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/PyCQA/isort/commit/0a09c783808cfe77bb3269250f663ff733d23302\"\u003e\u003ccode\u003e0a09c78\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2433\"\u003e#2433\u003c/a\u003e from DanielNoord/python-314\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/0fee794a05b5d0c471ac80bc8943f9843ca29644\"\u003e\u003ccode\u003e0fee794\u003c/code\u003e\u003c/a\u003e Add 3.14 to \u003ccode\u003estdlibds\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/332a1ad0b68bf3a3acac055b0ec3666408b3b425\"\u003e\u003ccode\u003e332a1ad\u003c/code\u003e\u003c/a\u003e Bump \u003ccode\u003ezstandard\u003c/code\u003e for 3.14 compat\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/f756e5653afcf6d79ec4d0240b1868cbebd8fafd\"\u003e\u003ccode\u003ef756e56\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2432\"\u003e#2432\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/52f5134889d345ff35afdcb86501c8221b804c70\"\u003e\u003ccode\u003e52f5134\u003c/code\u003e\u003c/a\u003e Format with \u003ccode\u003eruff\u003c/code\u003e instead of \u003ccode\u003eblack\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/012aa69fcadb3c89ff92a3d96aa449be7ae6746f\"\u003e\u003ccode\u003e012aa69\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2431\"\u003e#2431\u003c/a\u003e from DanielNoord/ruff-it-up\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/89773dbb371192541092657972a74e9ce0bbbc74\"\u003e\u003ccode\u003e89773db\u003c/code\u003e\u003c/a\u003e Target 3.10 with \u003ccode\u003eruff\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/933e382f98a0c77b4c6e33c4e3ef12bd57192884\"\u003e\u003ccode\u003e933e382\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/PyCQA/isort/issues/2430\"\u003e#2430\u003c/a\u003e from DanielNoord/drop-39\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/8b6e00cbe643a216da57fed4baa282d0a4a1b829\"\u003e\u003ccode\u003e8b6e00c\u003c/code\u003e\u003c/a\u003e Remove support for Python 3.9\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/isort/commit/b5f9f296ad873734e8caa3a731f27360648d9b37\"\u003e\u003ccode\u003eb5f9f29\u003c/code\u003e\u003c/a\u003e Bump profile plugin to 3.10+ and re-lock\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/PyCQA/isort/compare/6.0.1...7.0.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sqlalchemy` from 2.0.40 to 2.0.44\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sqlalchemy/sqlalchemy/releases\"\u003esqlalchemy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch1\u003e2.0.44\u003c/h1\u003e\n\u003cp\u003eReleased: October 10, 2025\u003c/p\u003e\n\u003ch2\u003eplatform\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[platform] [bug]\u003c/strong\u003e Unblocked automatic greenlet installation for Python 3.14 now that\nthere are greenlet wheels on pypi for python 3.14.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eorm\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[orm] [usecase]\u003c/strong\u003e The way ORM Annotated Declarative interprets Python \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e type aliases\nin \u003ccode\u003eMapped[]\u003c/code\u003e annotations has been refined to expand the lookup scheme. A\n\u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e type can now be resolved based on either its direct presence in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e or its immediate resolved\nvalue, as long as a recursive lookup across multiple \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e types is\nnot required for it to resolve. This change reverses part of the\nrestrictions introduced in 2.0.37 as part of \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/11955\"\u003e#11955\u003c/a\u003e, which\ndeprecated (and disallowed in 2.1) the ability to resolve any \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e\ntype that was not explicitly present in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e. Recursive lookups of\n\u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e types remains deprecated in 2.0 and disallowed in version 2.1,\nas do implicit lookups of \u003ccode\u003eNewType\u003c/code\u003e types without an entry in\n\u003ccode\u003e_orm.registry.type_annotation_map\u003c/code\u003e.\u003c/p\u003e\n\u003cp\u003eAdditionally, new support has been added for generic \u003ca href=\"https://peps.python.org/pep-0695\"\u003ePEP 695\u003c/a\u003e aliases that\nrefer to \u003ca href=\"https://peps.python.org/pep-0593\"\u003ePEP 593\u003c/a\u003e \u003ccode\u003eAnnotated\u003c/code\u003e constructs containing\n\u003ccode\u003e_orm.mapped_column()\u003c/code\u003e configurations. See the sections below for\nexamples.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/12829\"\u003e#12829\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003cstrong\u003e[orm] [bug]\u003c/strong\u003e Fixed a caching issue where \u003ccode\u003e_orm.with_loader_criteria()\u003c/code\u003e would\nincorrectly reuse cached bound parameter values when used with\n\u003ccode\u003e_sql.CompoundSelect\u003c/code\u003e constructs such as \u003ccode\u003e_sql.union()\u003c/code\u003e. The\nissue was caused by the cache key for compound selects not including the\nexecution options that are part of the \u003ccode\u003e_sql.Executable\u003c/code\u003e base class,\nwhich \u003ccode\u003e_orm.with_loader_criteria()\u003c/code\u003e uses to apply its criteria\ndynamically. The fix ensures that compound selects and other executable\nconstructs properly include execution options in their cache key traversal.\u003c/p\u003e\n\u003cp\u003eReferences: \u003ca href=\"https://www.sqlalchemy.org/trac/ticket/12905\"\u003e#12905\u003c/a\u003e\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eengine\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003cstrong\u003e[engine] [bug]\u003c/strong\u003e Implemented initial support for free-threaded Python by adding new tests\nand reworking the test harness to include Python 3.13t and Python 3.14t in\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\u003eSee full diff in \u003ca href=\"https://github.com/sqlalchemy/sqlalchemy/commits\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `psycopg2` from 2.9.10 to 2.9.11\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psycopg/psycopg2/blob/master/NEWS\"\u003epsycopg2's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eCurrent release\u003c/h2\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.11\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.14.\u003c/li\u003e\n\u003cli\u003eAvoid a segfault passing more arguments than placeholders if Python is built\nwith assertions enabled (:ticket:\u003ccode\u003e[#1791](https://github.com/psycopg/psycopg2/issues/1791)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eAdd riscv64 platform binary packages (:ticket:\u003ccode\u003e[#1813](https://github.com/psycopg/psycopg2/issues/1813)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e~psycopg2.errorcodes\u003c/code\u003e map and \u003ccode\u003e~psycopg2.errors\u003c/code\u003e classes updated to\nPostgreSQL 18.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.8.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.10\n^^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.13.\u003c/li\u003e\n\u003cli\u003eReceive notifications on commit (:ticket:\u003ccode\u003e[#1728](https://github.com/psycopg/psycopg2/issues/1728)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003e\u003ccode\u003e~psycopg2.errorcodes\u003c/code\u003e map and \u003ccode\u003e~psycopg2.errors\u003c/code\u003e classes updated to\nPostgreSQL 17.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.7.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.9\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for Python 3.12.\u003c/li\u003e\n\u003cli\u003eDrop support for Python 3.6.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.8\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eWheel package bundled with PostgreSQL 16 libpq in order to add support for\nrecent features, such as \u003ccode\u003esslcertmode\u003c/code\u003e.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.7\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFix propagation of exceptions raised during module initialization\n(:ticket:\u003ccode\u003e[#1598](https://github.com/psycopg/psycopg2/issues/1598)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eFix building when pg_config returns an empty string (:ticket:\u003ccode\u003e[#1599](https://github.com/psycopg/psycopg2/issues/1599)\u003c/code\u003e).\u003c/li\u003e\n\u003cli\u003eWheel package bundled with OpenSSL 1.1.1v.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eWhat's new in psycopg 2.9.6\n^^^^^^^^^^^^^^^^^^^^^^^^^^^\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/psycopg/psycopg2/commit/fd9ae8cad2bcfc3e7e9410e7b6f07cda8f4f05ec\"\u003e\u003ccode\u003efd9ae8c\u003c/code\u003e\u003c/a\u003e chore: bump to version 2.9.11\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/d923840546942534f0956d9202f914fd9feac5fd\"\u003e\u003ccode\u003ed923840\u003c/code\u003e\u003c/a\u003e chore: update docs requirements\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/d42dc7169d3cd93517e282e9ef5dc2a2b40650a2\"\u003e\u003ccode\u003ed42dc71\u003c/code\u003e\u003c/a\u003e Merge branch 'fix-1791'\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/4fde6560c32f06ad1304404c9f7f86148dcc4be0\"\u003e\u003ccode\u003e4fde656\u003c/code\u003e\u003c/a\u003e fix: avoid failed assert passing more arguments than placeholders\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/8308c19d6af0d904b313997539ed33415990a74e\"\u003e\u003ccode\u003e8308c19\u003c/code\u003e\u003c/a\u003e fix: drop warning about the use of deprecated PyWeakref_GetObject function\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/1a1eabf098a3374409bb2ab4b594777b900f396d\"\u003e\u003ccode\u003e1a1eabf\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/github-script from 7 to 8\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/897af8b38beda851d7257dfc525129e37c0ec9e0\"\u003e\u003ccode\u003e897af8b\u003c/code\u003e\u003c/a\u003e build(deps): bump peter-evans/repository-dispatch from 3 to 4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/ceefd305117113ca10e383a626e87ba0796f3638\"\u003e\u003ccode\u003eceefd30\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/checkout from 4 to 5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/4dc585430cabe94cee96c5a9de0265d0f55370f1\"\u003e\u003ccode\u003e4dc5854\u003c/code\u003e\u003c/a\u003e build(deps): bump actions/setup-python from 5 to 6\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psycopg/psycopg2/commit/1945788dcf6172bb1b9328ebc3587ccf0e6a659c\"\u003e\u003ccode\u003e1945788\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psycopg/psycopg2/issues/1802\"\u003e#1802\u003c/a\u003e from edgarrmondragon/cp314-wheels\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psycopg/psycopg2/compare/2.9.10...2.9.11\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `beaupy` from 3.10.1 to 3.10.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/petereon/beaupy/releases\"\u003ebeaupy's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev3.10.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003echore(deps): update dependency flake8 to v7.1.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/129\"\u003epetereon/beaupy#129\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency isort to v5.13.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/130\"\u003epetereon/beaupy#130\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency mypy to v1.14.1 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/131\"\u003epetereon/beaupy#131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003edocs: adding documentation for global config by \u003ca href=\"https://github.com/petereon\"\u003e\u003ccode\u003e@​petereon\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/148\"\u003epetereon/beaupy#148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency pytest to v8.4.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/147\"\u003epetereon/beaupy#147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency black to v25 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/144\"\u003epetereon/beaupy#144\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003echore(deps): update dependency pydoc-markdown to v4.8.2 by \u003ca href=\"https://github.com/renovate\"\u003e\u003ccode\u003e@​renovate\u003c/code\u003e\u003c/a\u003e[bot] in \u003ca href=\"https://redirect.github.com/petereon/beaupy/pull/132\"\u003epetereon/beaupy#132\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\"\u003ehttps://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\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/petereon/beaupy/commit/a2dc15764508c0451ed4dc386f3b0761fe7a9ce2\"\u003e\u003ccode\u003ea2dc157\u003c/code\u003e\u003c/a\u003e chore: bump version from 3.10.1 to 3.10.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/7599e5a43be6893c81612314f410ffa602a15f57\"\u003e\u003ccode\u003e7599e5a\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/132\"\u003e#132\u003c/a\u003e from petereon/renovate/pydoc-markdown-4.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/6b2bb33d4fef6f2a607e1f42c873bd92ffc2b0d5\"\u003e\u003ccode\u003e6b2bb33\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pydoc-markdown to v4.8.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/d2b0cbc3bb6b191816fdef9319a150e9b305ae7f\"\u003e\u003ccode\u003ed2b0cbc\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/144\"\u003e#144\u003c/a\u003e from petereon/renovate/black-25.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/926fb4e8773f587417e7a3f453af1641364888e5\"\u003e\u003ccode\u003e926fb4e\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency black to v25\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/df126efc542641c8f7385f8087a19a95ee1615b7\"\u003e\u003ccode\u003edf126ef\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/147\"\u003e#147\u003c/a\u003e from petereon/renovate/pytest-8.x\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/0eb77250022a166836a4594a489d9c178591234b\"\u003e\u003ccode\u003e0eb7725\u003c/code\u003e\u003c/a\u003e chore(deps): update dependency pytest to v8.4.2\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/7b9234631ce3510e433fbb59d4c0e829d70fd569\"\u003e\u003ccode\u003e7b92346\u003c/code\u003e\u003c/a\u003e chore: linting code\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/531e870193a7cb26ab43370a45d8562cb44d8b15\"\u003e\u003ccode\u003e531e870\u003c/code\u003e\u003c/a\u003e chore: fix weird types\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/petereon/beaupy/commit/dfd9dbc54327c19455197566f7161de08ad3180b\"\u003e\u003ccode\u003edfd9dbc\u003c/code\u003e\u003c/a\u003e docs: adding documentation for global config (\u003ca href=\"https://redirect.github.com/petereon/beaupy/issues/148\"\u003e#148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/petereon/beaupy/compare/v3.10.1...v3.10.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `sigstore` from 3.6.2 to 4.1.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/sigstore/sigstore-python/releases\"\u003esigstore's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev4.1.0\u003c/h2\u003e\n\u003ch3\u003eAdded\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ecli: Support using other Sigstore instances with \u003ccode\u003e--instance URL\u003c/code\u003e.\nNew instances are trusted with new top level command \u003ccode\u003etrust-instance ROOTFILE\u003c/code\u003e.\n\u003ca href=\"https://redirect.github.com/sigstore/sigstore-python/pull/1548\"\u003e#1548\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eChanged\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdded ...\n\n_Description has been truncated_","html_url":"https://github.com/repository-service-tuf/repository-service-tuf-cli/pull/915","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/repository-service-tuf%2Frepository-service-tuf-cli/issues/915","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/915/packages"}},{"old_version":"2.3.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2025-11-10T11:50:04.000Z","version_change":"2.3.0 → 2.4.0","issue":{"uuid":"3607663700","node_id":"PR_kwDOI5l2cc6yg2p7","number":110,"state":"open","title":"deps(deps): bump hvac from 2.3.0 to 2.4.0","user":"dependabot[bot]","labels":[],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-11-10T11:50:04.000Z","updated_at":"2025-11-10T11:50:14.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"deps(deps)","packages":[{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.3.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.3.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/ChiefGyk3D/Stream-Daemon/pull/110","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/ChiefGyk3D%2FStream-Daemon/issues/110","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/110/packages"}},{"old_version":"2.3.0","new_version":"2.4.0","update_type":"minor","path":null,"pr_created_at":"2025-10-30T20:09:16.000Z","version_change":"2.3.0 → 2.4.0","issue":{"uuid":"3572335470","node_id":"PR_kwDODTo4k86wsyFZ","number":7602,"state":"open","title":"chore(deps-dev): bump hvac from 2.3.0 to 2.4.0","user":"dependabot[bot]","labels":["dependencies","internal","size/XS","python"],"assignees":[],"locked":false,"comments_count":2,"pull_request":true,"closed_at":null,"author_association":null,"state_reason":null,"created_at":"2025-10-30T20:09:16.000Z","updated_at":"2025-10-31T17:00:51.180Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"chore(deps-dev)","packages":[{"name":"hvac","old_version":"2.3.0","new_version":"2.4.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.3.0 to 2.4.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.4.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e📚 Documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/EmFl\"\u003e\u003ccode\u003e@​EmFl\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/deamen\"\u003e\u003ccode\u003e@​deamen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/evan-cohen\"\u003e\u003ccode\u003e@​evan-cohen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/roshan-baladhanvi\"\u003e\u003ccode\u003e@​roshan-baladhanvi\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/apps/dependabot\"\u003edependabot[bot]\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.4.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eadd audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1224\"\u003eGH-1224\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e📚 Documentation\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003edocs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1182\"\u003eGH-1182\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix a typo in read_secret_version warning message (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1219\"\u003eGH-1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003ePin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1210\"\u003eGH-1210\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/hvac/hvac/commit/2f1a58f754526b6baeee43d8763917d308ca2997\"\u003e\u003ccode\u003e2f1a58f\u003c/code\u003e\u003c/a\u003e fix pypi release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/fd769362047d4c05f3260b5b508e2b92db043d27\"\u003e\u003ccode\u003efd76936\u003c/code\u003e\u003c/a\u003e use ls instead (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1233\"\u003e#1233\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/7ae23dfe283f43ca6b355080494e6110cc46da8d\"\u003e\u003ccode\u003e7ae23df\u003c/code\u003e\u003c/a\u003e remove tree command from release workflow\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/bba486c05642ed04fb89abb3543c7641333346f1\"\u003e\u003ccode\u003ebba486c\u003c/code\u003e\u003c/a\u003e Release/v2.4.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1232\"\u003e#1232\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/531b9df740819d8961d1eab3623ab642c6188524\"\u003e\u003ccode\u003e531b9df\u003c/code\u003e\u003c/a\u003e coverage: skip on schedule, try slim runner (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1231\"\u003e#1231\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b8167a7545bbf541200f6acef949b28d888faca2\"\u003e\u003ccode\u003eb8167a7\u003c/code\u003e\u003c/a\u003e add audience param to kubernetes role creation (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1224\"\u003e#1224\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/590537d15b389946eb0d34081f2bb3275f33ece6\"\u003e\u003ccode\u003e590537d\u003c/code\u003e\u003c/a\u003e Fix tests and CI - certs, schedule, etc. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1230\"\u003e#1230\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4c0b650c2adbf4f8af72372e0b33ea60259c7397\"\u003e\u003ccode\u003e4c0b650\u003c/code\u003e\u003c/a\u003e fix: Fixing a typo in read_secret_version (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1219\"\u003e#1219\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/ea3a6520cc08f69470494cce0ac26a2ab025f91d\"\u003e\u003ccode\u003eea3a652\u003c/code\u003e\u003c/a\u003e Pin consul version in CI (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1210\"\u003e#1210\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/2d2c80e296f2983c00486ee2a2ea000a3cc15604\"\u003e\u003ccode\u003e2d2c80e\u003c/code\u003e\u003c/a\u003e docs: fix AppRole.login docstring (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1182\"\u003e#1182\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.3.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.3.0\u0026new-version=2.4.0)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)\n\nDependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`.\n\n[//]: # (dependabot-automerge-start)\n[//]: # (dependabot-automerge-end)\n\n---\n\n\u003cdetails\u003e\n\u003csummary\u003eDependabot commands and options\u003c/summary\u003e\n\u003cbr /\u003e\n\nYou can trigger Dependabot actions by commenting on this PR:\n- `@dependabot rebase` will rebase this PR\n- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it\n- `@dependabot merge` will merge this PR after your CI passes on it\n- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it\n- `@dependabot cancel merge` will cancel a previously requested merge and block automerging\n- `@dependabot reopen` will reopen this PR if it is closed\n- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually\n- `@dependabot show \u003cdependency name\u003e ignore conditions` will show all of the ignore conditions of the specified dependency\n- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)\n- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)\n\n\n\u003c/details\u003e","html_url":"https://github.com/aws-powertools/powertools-lambda-python/pull/7602","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/aws-powertools%2Fpowertools-lambda-python/issues/7602","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/7602/packages"}},{"old_version":"1.2.1","new_version":"2.3.0","update_type":"major","path":null,"pr_created_at":"2025-10-20T12:52:36.000Z","version_change":"1.2.1 → 2.3.0","issue":{"uuid":"3532329225","node_id":"PR_kwDOHfpFZM6uoDVW","number":222,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":1,"pull_request":true,"closed_at":"2025-10-20T14:35:16.000Z","author_association":null,"state_reason":null,"created_at":"2025-10-20T12:52:36.000Z","updated_at":"2025-10-20T14:35:18.000Z","time_to_close":6160,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/222","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/222","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/222/packages"}},{"old_version":"1.2.1","new_version":"2.3.0","update_type":"major","path":null,"pr_created_at":"2025-10-06T12:29:00.000Z","version_change":"1.2.1 → 2.3.0","issue":{"uuid":"2890022161","node_id":"PR_kwDOHfpFZM6sQj0R","number":220,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-10-06T15:54:46.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-10-06T12:29:00.000Z","updated_at":"2025-10-06T15:54:47.000Z","time_to_close":12346,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/220","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/220","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/220/packages"}},{"old_version":"1.2.1","new_version":"2.3.0","update_type":"major","path":null,"pr_created_at":"2025-09-29T16:33:44.000Z","version_change":"1.2.1 → 2.3.0","issue":{"uuid":"2871308338","node_id":"PR_kwDOHfpFZM6rJLAy","number":219,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-09-29T20:14:38.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-09-29T16:33:44.000Z","updated_at":"2025-09-29T20:14:39.000Z","time_to_close":13254,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.3","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.3` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.3\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.3\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Python 3.14 and free-threading (experimental).\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.2...6.0.3\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/6.0.3/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.3 (2025-09-25)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/864\"\u003eyaml/pyyaml#864\u003c/a\u003e -- Support for Python 3.14 and free-threading (experimental)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/49790e73684bebad1df05ef8d828fa12f685bffb\"\u003e\u003ccode\u003e49790e7\u003c/code\u003e\u003c/a\u003e Release 6.0.3 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/889\"\u003e#889\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.3\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github....\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/219","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/219","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/219/packages"}},{"old_version":"2.1.0","new_version":"2.3.0","update_type":"minor","path":null,"pr_created_at":"2025-09-12T10:03:41.000Z","version_change":"2.1.0 → 2.3.0","issue":{"uuid":"2822118521","node_id":"PR_kwDOBAZmNc6oNhx5","number":118,"state":"open","title":"Bump hvac from 2.1.0 to 2.3.0","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-12T10:03:41.000Z","updated_at":"2025-09-12T10:03:42.000Z","time_to_close":null,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","packages":[{"name":"hvac","old_version":"2.1.0","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"}],"path":null,"ecosystem":"pip"},"body":"Bumps [hvac](https://github.com/hvac/hvac) from 2.1.0 to 2.3.0.\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v2.1.0...v2.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=hvac\u0026package-manager=pip\u0026previous-version=2.1.0\u0026new-version=2.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/gopythongo/gopythongo/pull/118","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/gopythongo%2Fgopythongo/issues/118","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/118/packages"}},{"old_version":"1.2.1","new_version":"2.3.0","update_type":"major","path":null,"pr_created_at":"2025-08-26T00:05:09.000Z","version_change":"1.2.1 → 2.3.0","issue":{"uuid":"2773329812","node_id":"PR_kwDOHfpFZM6lTaeU","number":215,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-26T03:24:46.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-08-26T00:05:09.000Z","updated_at":"2025-08-26T03:24:47.000Z","time_to_close":11977,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.2` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/main/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/se...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/215","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/215","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/215/packages"}},{"old_version":"1.2.1","new_version":"2.3.0","update_type":"major","path":null,"pr_created_at":"2025-08-18T17:49:42.000Z","version_change":"1.2.1 → 2.3.0","issue":{"uuid":"2754064646","node_id":"PR_kwDOHfpFZM6kJ7EG","number":214,"state":"closed","title":"Bump the python-updates group with 15 updates","user":"dependabot[bot]","labels":["dependencies","python"],"assignees":[],"locked":false,"comments_count":0,"pull_request":true,"closed_at":"2025-08-19T00:04:16.000Z","author_association":"NONE","state_reason":null,"created_at":"2025-08-18T17:49:42.000Z","updated_at":"2025-08-19T00:04:16.000Z","time_to_close":22474,"merged_at":null,"merged_by":null,"closed_by":null,"dependency_metadata":{"prefix":"Bump","group_name":"python-updates","update_count":15,"packages":[{"name":"hvac","old_version":"1.2.1","new_version":"2.3.0","repository_url":"https://github.com/hvac/hvac"},{"name":"prometheus-client","old_version":"0.15.0","new_version":"0.21.1","repository_url":"https://github.com/prometheus/client_python"},{"name":"requests","old_version":"2.31.0","new_version":"2.32.4","repository_url":"https://github.com/psf/requests"},{"name":"pyyaml","old_version":"6.0.1","new_version":"6.0.2","repository_url":"https://github.com/yaml/pyyaml"},{"name":"cerberus","old_version":"1.3.5","new_version":"1.3.7","repository_url":"https://github.com/pyeve/cerberus"},{"name":"black","old_version":"23.10.0","new_version":"24.8.0","repository_url":"https://github.com/psf/black"},{"name":"pylint","old_version":"2.17.7","new_version":"3.2.7","repository_url":"https://github.com/pylint-dev/pylint"},{"name":"pytest","old_version":"7.4.2","new_version":"8.3.5","repository_url":"https://github.com/pytest-dev/pytest"},{"name":"pytest-cov","old_version":"4.1.0","new_version":"5.0.0","repository_url":"https://github.com/pytest-dev/pytest-cov"},{"name":"types-requests","old_version":"2.31.0.10","new_version":"2.32.0.20241016","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"types-pyyaml","old_version":"6.0.12.12","new_version":"6.0.12.20241230","repository_url":"https://github.com/typeshed-internal/stub_uploader"},{"name":"bandit","old_version":"1.7.5","new_version":"1.7.10","repository_url":"https://github.com/PyCQA/bandit"},{"name":"pytest-mock","old_version":"3.12.0","new_version":"3.14.1","repository_url":"https://github.com/pytest-dev/pytest-mock"},{"name":"mock","old_version":"4.0.3","new_version":"5.2.0","repository_url":"https://github.com/testing-cabal/mock"},{"name":"mypy","old_version":"1.6.1","new_version":"1.14.1","repository_url":"https://github.com/python/mypy"}],"path":null,"ecosystem":"pip"},"body":"Bumps the python-updates group with 15 updates:\n\n| Package | From | To |\n| --- | --- | --- |\n| [hvac](https://github.com/hvac/hvac) | `1.2.1` | `2.3.0` |\n| [prometheus-client](https://github.com/prometheus/client_python) | `0.15.0` | `0.21.1` |\n| [requests](https://github.com/psf/requests) | `2.31.0` | `2.32.4` |\n| [pyyaml](https://github.com/yaml/pyyaml) | `6.0.1` | `6.0.2` |\n| [cerberus](https://github.com/pyeve/cerberus) | `1.3.5` | `1.3.7` |\n| [black](https://github.com/psf/black) | `23.10.0` | `24.8.0` |\n| [pylint](https://github.com/pylint-dev/pylint) | `2.17.7` | `3.2.7` |\n| [pytest](https://github.com/pytest-dev/pytest) | `7.4.2` | `8.3.5` |\n| [pytest-cov](https://github.com/pytest-dev/pytest-cov) | `4.1.0` | `5.0.0` |\n| [types-requests](https://github.com/typeshed-internal/stub_uploader) | `2.31.0.10` | `2.32.0.20241016` |\n| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader) | `6.0.12.12` | `6.0.12.20241230` |\n| [bandit](https://github.com/PyCQA/bandit) | `1.7.5` | `1.7.10` |\n| [pytest-mock](https://github.com/pytest-dev/pytest-mock) | `3.12.0` | `3.14.1` |\n| [mock](https://github.com/testing-cabal/mock) | `4.0.3` | `5.2.0` |\n| [mypy](https://github.com/python/mypy) | `1.6.1` | `1.14.1` |\n\nUpdates `hvac` from 1.2.1 to 2.3.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/hvac/hvac/releases\"\u003ehvac's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003ev2.3.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/clealb\"\u003e\u003ccode\u003e@​clealb\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot] and \u003ca href=\"https://github.com/tot19\"\u003e\u003ccode\u003e@​tot19\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.2.0\u003c/h2\u003e\n\u003ch2\u003e📢 Deprecations / Announcements\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🧰 Miscellaneous\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003eThanks to \u003ca href=\"https://github.com/JordanStopford\"\u003e\u003ccode\u003e@​JordanStopford\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/briantist\"\u003e\u003ccode\u003e@​briantist\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/cognifloyd\"\u003e\u003ccode\u003e@​cognifloyd\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/danholodak\"\u003e\u003ccode\u003e@​danholodak\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/dependabot\"\u003e\u003ccode\u003e@​dependabot\u003c/code\u003e\u003c/a\u003e[bot], \u003ca href=\"https://github.com/ewanoomen\"\u003e\u003ccode\u003e@​ewanoomen\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/loqs\"\u003e\u003ccode\u003e@​loqs\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/mweigel\"\u003e\u003ccode\u003e@​mweigel\u003c/code\u003e\u003c/a\u003e, \u003ca href=\"https://github.com/valleedelisle\"\u003e\u003ccode\u003e@​valleedelisle\u003c/code\u003e\u003c/a\u003e and \u003ca href=\"https://github.com/yan12125\"\u003e\u003ccode\u003e@​yan12125\u003c/code\u003e\u003c/a\u003e for their lovely contributions.\u003c/p\u003e\n\u003ch2\u003ev2.1.0\u003c/h2\u003e\n\u003ch2\u003e🚀 Features\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e🐛 Bug Fixes\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/hvac/hvac/blob/main/CHANGELOG.md\"\u003ehvac's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e2.3.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImplement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1172\"\u003eGH-1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1169\"\u003eGH-1169\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eDependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1174\"\u003eGH-1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eupdate artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1173\"\u003eGH-1173\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.2.0\u003c/h2\u003e\n\u003ch3\u003e📢 Deprecations / Announcements\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eLDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1163\"\u003eGH-1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eLDAP secret engine support (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1032\"\u003e#1032\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1033\"\u003eGH-1033\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd new exception types for HTTP status 405 and 412 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1148\"\u003eGH-1148\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd sts_region parameter to auth.aws.configure (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1136\"\u003eGH-1136\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdding namespace_in_state to jwt (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1144\"\u003eGH-1144\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd associated_data to encrypt/decrypt transit endpoints (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1108\"\u003eGH-1108\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eaws auth - add support for \u003ccode\u003eiam_metadata\u003c/code\u003e and \u003ccode\u003eec2_metadata\u003c/code\u003e params (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1125\"\u003eGH-1125\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🧰 Miscellaneous\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eBump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1160\"\u003eGH-1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1158\"\u003eGH-1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump cryptography from 41.0.7 to 42.0.4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1157\"\u003eGH-1157\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd Vault 1.16.x to CI matrix (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1155\"\u003eGH-1155\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eMake integration tests more reliable (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1153\"\u003eGH-1153\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eReplace distutils.spawn with shutil.which (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1146\"\u003eGH-1146\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eBump jinja2 from 3.0.3 to 3.1.3 (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1131\"\u003eGH-1131\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003erefactor: move identity DEFAULT_MOUNT_POINT to constants (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1123\"\u003eGH-1123\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.1.0\u003c/h2\u003e\n\u003ch3\u003e🚀 Features\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for sys/policies endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1100\"\u003eGH-1100\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eadd quota support to system backend (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1092\"\u003eGH-1092\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdd support to PKI class to perform CRUD on issuers (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1102\"\u003eGH-1102\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e🐛 Bug Fixes\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ccode\u003eClient.write_data\u003c/code\u003e - remove potentially dangerous default (\u003ca href=\"https://redirect.github.com/hvac/hvac/pull/1120\"\u003eGH-1120\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/hvac/hvac/commit/b76e0edff2059d8e58591f3ddd454deb49f82b95\"\u003e\u003ccode\u003eb76e0ed\u003c/code\u003e\u003c/a\u003e Release/v2.3.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1175\"\u003e#1175\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/6f800a87a9351a7b24d97dc0651b69fdf6cc17b6\"\u003e\u003ccode\u003e6f800a8\u003c/code\u003e\u003c/a\u003e Dependencies/security updates (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1174\"\u003e#1174\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/e58709a96fd5177bf1c0a54fcff85f2bf6730f6e\"\u003e\u003ccode\u003ee58709a\u003c/code\u003e\u003c/a\u003e update artifact actions to v4 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1173\"\u003e#1173\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/4b3d76eb4a7a76d017dd32c694dc03581ac5638b\"\u003e\u003ccode\u003e4b3d76e\u003c/code\u003e\u003c/a\u003e Implement the /sys/wrapping/wrap endpoint (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1172\"\u003e#1172\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/605b9c614cf3757b0b4b305111c0c30456ca56ac\"\u003e\u003ccode\u003e605b9c6\u003c/code\u003e\u003c/a\u003e Bump softprops/action-gh-release from 2.0.4 to 2.0.5 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1171\"\u003e#1171\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/96bb9a3b939c5ad50a672364ca35d441d17b2bdd\"\u003e\u003ccode\u003e96bb9a3\u003c/code\u003e\u003c/a\u003e add support for Vault Raft auto-snapshot endpoints. (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1169\"\u003e#1169\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/b1f62ace2101f973b5ef2e42b143bccbdd020513\"\u003e\u003ccode\u003eb1f62ac\u003c/code\u003e\u003c/a\u003e Release/v2.2.0 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1164\"\u003e#1164\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/60683383f99e02752697601a80964fd5f1f5a8d9\"\u003e\u003ccode\u003e6068338\u003c/code\u003e\u003c/a\u003e LDAP secrets engine enhancements (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/a0418e218e80c17bbdbc0f2893ef7fc02ee3917e\"\u003e\u003ccode\u003ea0418e2\u003c/code\u003e\u003c/a\u003e Bump idna from 3.6 to 3.7 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/hvac/hvac/commit/89bdc431336ef29d4e1fefb2d83e7261d61dcafe\"\u003e\u003ccode\u003e89bdc43\u003c/code\u003e\u003c/a\u003e Bump jwcrypto from 1.5.1 to 1.5.6 (\u003ca href=\"https://redirect.github.com/hvac/hvac/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/hvac/hvac/compare/v1.2.1...v2.3.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `prometheus-client` from 0.15.0 to 0.21.1\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/prometheus/client_python/releases\"\u003eprometheus-client's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e0.21.1 / 2024-12-03\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Revert incorrect use of reentrant locks. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.21.0 / 2024-09-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Reject invalid (not GET or OPTION) HTTP methods. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e\n[ENHANCEMENT] Allow writing metrics when holding a lock for the metric in the same thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e\n[BUGFIX] Check for and error on None label values. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e\n[BUGFIX] Fix timestamp comparison. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.20.0 / 2024-02-14\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e[CHANGE/BUGFIX] Update OpenMetrics Content Type to 1.0.0. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/997\"\u003e#997\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Enable graceful shutdown for start_{http,wsgi}_server by returning the server and thread. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/999\"\u003e#999\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[FEATURE] Allow resetting counter metrics. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1005\"\u003e#1005\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003e[BUGFIX] wsgi server: address family discovery is not quite right. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1006\"\u003e#1006\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e0.19.0 / 2023-11-20\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cp\u003e[FEATURE] support HTTPS/TLS in start_http_server. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/946\"\u003e#946\u003c/a\u003e\n[BUGFIX] fix: error in determining timestamp less than. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/979\"\u003e#979\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.18.0 / 2023-10-30\u003c/h2\u003e\n\u003cp\u003e[CHANGE] Remove support for Python versions \u0026lt; 3.8. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/936\"\u003e#936\u003c/a\u003e\n[FEATURE] Add \u003ccode\u003emostrecent\u003c/code\u003e aggregation to Gauge. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/967\"\u003e#967\u003c/a\u003e\n[ENHANCEMENT] Typing improvements. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/935\"\u003e#935\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/970\"\u003e#970\u003c/a\u003e\n[ENHANCEMENT] Allow enabling or disabling \u003ccode\u003e_created\u003c/code\u003e metrics from code. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/973\"\u003e#973\u003c/a\u003e\n[BUGFIX] Change #!/usr/bin/python to #!/usr/bin/env python in remaining places. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/945\"\u003e#945\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.1 / 2023-07-19\u003c/h2\u003e\n\u003cp\u003e[BUGFIX] Use #!/usr/bin/env python instead of #!usr/bin/python in bridge/graphite.py. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/928\"\u003e#928\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.17.0 / 2023-05-24\u003c/h2\u003e\n\u003cp\u003e[ENHANCEMENT] Add additional typing. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/887\"\u003e#887\u003c/a\u003e, \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/903\"\u003e#903\u003c/a\u003e\n[BUGFIX] Fix typo in python_gc_objects_collected metadata. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/894\"\u003e#894\u003c/a\u003e\n[BUGFIX] Do not include .pyc files in the build wheel. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/906\"\u003e#906\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e0.16.0 / 2023-01-23\u003c/h2\u003e\n\u003cp\u003e[FEATURE] Support HELP text in multiprocess mode. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/804\"\u003e#804\u003c/a\u003e\n[ENHANCEMENT] Reduce the mmap minimum size. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/853\"\u003e#853\u003c/a\u003e\n[BUGFIX] Use the correct OpenMetrics encoder when \u003ccode\u003eapplication/openmetrics-text\u003c/code\u003e is requested in ASGI apps. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/864\"\u003e#864\u003c/a\u003e\n[BUGFIX] Allow Prometheus format parser to handle a missing space after labels. \u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/872\"\u003e#872\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/prometheus/client_python/commit/b3f61b3ccf237424f03cc5aa3ac6ecc81c82455f\"\u003e\u003ccode\u003eb3f61b3\u003c/code\u003e\u003c/a\u003e Release 0.21.1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/591e91f4752d1cab70027ac7ab07166ab05adec2\"\u003e\u003ccode\u003e591e91f\u003c/code\u003e\u003c/a\u003e Drop incorrect use of reentrant locks (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1076\"\u003e#1076\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/3b183b44994454be226c208037e1fe4b9a89dfc5\"\u003e\u003ccode\u003e3b183b4\u003c/code\u003e\u003c/a\u003e Release 0.21.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/0014e9776350a252930671ed170edee464f9b428\"\u003e\u003ccode\u003e0014e97\u003c/code\u003e\u003c/a\u003e Use re-entrant lock. (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1014\"\u003e#1014\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7c45f84e5e3d2e0a75b3946408fec1a4d5c72841\"\u003e\u003ccode\u003e7c45f84\u003c/code\u003e\u003c/a\u003e Reject invalid HTTP methods and resources (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1019\"\u003e#1019\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/09a5ae30602a7a81f6174dae4ba08b93ee7feed2\"\u003e\u003ccode\u003e09a5ae3\u003c/code\u003e\u003c/a\u003e Fix timestamp comparison (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1038\"\u003e#1038\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/e364a96f506bbb70ae744e0b3307e4b693e28258\"\u003e\u003ccode\u003ee364a96\u003c/code\u003e\u003c/a\u003e Fix a typo in ASGI docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1036\"\u003e#1036\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/eeec421b2f489d2c465bb8ca419b772829b7b16c\"\u003e\u003ccode\u003eeeec421\u003c/code\u003e\u003c/a\u003e Pin python 3.8 and 3.9 at patch level (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1024\"\u003e#1024\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/7bc8cddfbbc9b72c98725a879d9b94a675a6c7da\"\u003e\u003ccode\u003e7bc8cdd\u003c/code\u003e\u003c/a\u003e docs: correct link to multiprocessing docs (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1023\"\u003e#1023\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/prometheus/client_python/commit/4535ce0f43097aa48e44a65747d82064f2aadaf5\"\u003e\u003ccode\u003e4535ce0\u003c/code\u003e\u003c/a\u003e Add sanity check for label value (\u003ca href=\"https://redirect.github.com/prometheus/client_python/issues/1012\"\u003e#1012\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/prometheus/client_python/compare/v0.15.0...v0.21.1\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `requests` from 2.31.0 to 2.32.4\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.4\u003c/h2\u003e\n\u003ch2\u003e2.32.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6965\"\u003e#6965\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6926\"\u003e#6926\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.3\u003c/h2\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.2\u003c/h2\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.1\u003c/h2\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003ev2.32.0\u003c/h2\u003e\n\u003cp\u003e2.32.0 (2024-05-20)\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\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.4 (2025-06-10)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eCVE-2024-47081 Fixed an issue where a maliciously crafted URL and trusted\nenvironment will retrieve credentials for the wrong hostname/machine from a\nnetrc file.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eImprovements\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eNumerous documentation improvements\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 pypy 3.11 for Linux and macOS.\u003c/li\u003e\n\u003cli\u003eDropped support for pypy 3.9 following its end of support.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.3 (2024-05-29)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eFixed bug breaking the ability to specify custom SSLContexts in sub-classes of\nHTTPAdapter. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6716\"\u003e#6716\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFixed issue where Requests started failing to run on Python versions compiled\nwithout the \u003ccode\u003essl\u003c/code\u003e module. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6724\"\u003e#6724\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.2 (2024-05-21)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eDeprecations\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003eTo provide a more stable migration for custom HTTPAdapters impacted\nby the CVE changes in 2.32.0, we've renamed \u003ccode\u003e_get_connection\u003c/code\u003e to\na new public API, \u003ccode\u003eget_connection_with_tls_context\u003c/code\u003e. Existing custom\nHTTPAdapters will need to migrate their code to use this new API.\n\u003ccode\u003eget_connection\u003c/code\u003e is considered deprecated in all versions of Requests\u0026gt;=2.32.0.\u003c/p\u003e\n\u003cp\u003eA minimal (2-line) example has been provided in the linked PR to ease\nmigration, but we strongly urge users to evaluate if their custom adapter\nis subject to the same issue described in CVE-2024-35195. (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6710\"\u003e#6710\u003c/a\u003e)\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.1 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eBugfixes\u003c/strong\u003e\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003eAdd missing test certs to the sdist distributed on PyPI.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e2.32.0 (2024-05-20)\u003c/h2\u003e\n\u003cp\u003e\u003cstrong\u003eSecurity\u003c/strong\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/psf/requests/commit/021dc729f0b71a3030cefdbec7fb57a0e80a6cfd\"\u003e\u003ccode\u003e021dc72\u003c/code\u003e\u003c/a\u003e Polish up release tooling for last manual release\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/821770e822a20a21b207b3907ea83878bda1d396\"\u003e\u003ccode\u003e821770e\u003c/code\u003e\u003c/a\u003e Bump version and add release notes for v2.32.4\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/59f8aa2adf1d3d06bcbf7ce6b13743a1639a5401\"\u003e\u003ccode\u003e59f8aa2\u003c/code\u003e\u003c/a\u003e Add netrc file search information to authentication documentation (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6876\"\u003e#6876\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/5b4b64c3467fd7a3c03f91ee641aaa348b6bed3b\"\u003e\u003ccode\u003e5b4b64c\u003c/code\u003e\u003c/a\u003e Add more tests to prevent regression of CVE 2024 47081\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7bc45877a86192af77645e156eb3744f95b47dae\"\u003e\u003ccode\u003e7bc4587\u003c/code\u003e\u003c/a\u003e Add new test to check netrc auth leak (\u003ca href=\"https://redirect.github.com/psf/requests/issues/6962\"\u003e#6962\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/96ba401c1296ab1dda74a2365ef36d88f7d144ef\"\u003e\u003ccode\u003e96ba401\u003c/code\u003e\u003c/a\u003e Only use hostname to do netrc lookup instead of netloc\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/7341690e842a23cf18ded0abd9229765fa88c4e2\"\u003e\u003ccode\u003e7341690\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/psf/requests/issues/6951\"\u003e#6951\u003c/a\u003e from tswast/patch-1\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/6716d7c9f29df636643fa2489f98890216525cb0\"\u003e\u003ccode\u003e6716d7c\u003c/code\u003e\u003c/a\u003e remove links\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/a7e1c745dc23c18e836febd672416ed0c5d8d8ae\"\u003e\u003ccode\u003ea7e1c74\u003c/code\u003e\u003c/a\u003e Update docs/conf.py\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/requests/commit/c799b8167a13416833ad3b4f3298261a477e826f\"\u003e\u003ccode\u003ec799b81\u003c/code\u003e\u003c/a\u003e docs: fix dead links to kenreitz.org\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/requests/compare/v2.31.0...v2.32.4\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pyyaml` from 6.0.1 to 6.0.2\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/yaml/pyyaml/releases\"\u003epyyaml's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e6.0.2\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for Cython 3.x and Python 3.13.\u003c/li\u003e\n\u003c/ul\u003e\n\u003cp\u003e\u003cstrong\u003eFull Changelog\u003c/strong\u003e: \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ehttps://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e6.0.2rc1\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eSupport for extension build with Cython 3.x\u003c/li\u003e\n\u003cli\u003eSupport for Python 3.13\u003c/li\u003e\n\u003cli\u003eAdded PyPI wheels for musllinux on aarch64\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/yaml/pyyaml/blob/main/CHANGES\"\u003epyyaml's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003cp\u003e6.0.2 (2024-08-06)\u003c/p\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/yaml/pyyaml/pull/808\"\u003eyaml/pyyaml#808\u003c/a\u003e -- Support for Cython 3.x and Python 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/yaml/pyyaml/commit/41309b0bcb4559edb1d691d47199035ef539d785\"\u003e\u003ccode\u003e41309b0\u003c/code\u003e\u003c/a\u003e Release 6.0.2 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/819\"\u003e#819\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/dd9f0e1236775dcce682c91823e009556ce2a271\"\u003e\u003ccode\u003edd9f0e1\u003c/code\u003e\u003c/a\u003e 6.0.2rc1 (\u003ca href=\"https://redirect.github.com/yaml/pyyaml/issues/809\"\u003e#809\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/f5527a26d518b3e9c66f9211e0af00c83f09a97e\"\u003e\u003ccode\u003ef5527a2\u003c/code\u003e\u003c/a\u003e disable CI trigger on PR edits\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/yaml/pyyaml/commit/b4d80a742142004490d2da7691d534923820b81c\"\u003e\u003ccode\u003eb4d80a7\u003c/code\u003e\u003c/a\u003e Python 3.12 + musllinux_1_1_x86_64 wheel support\u003c/li\u003e\n\u003cli\u003eSee full diff in \u003ca href=\"https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `cerberus` from 1.3.5 to 1.3.7\n\u003cdetails\u003e\n\u003csummary\u003eChangelog\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/pyeve/cerberus/blob/1.3.x/CHANGES.rst\"\u003ecerberus's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003eVersion 1.3.7\u003c/h2\u003e\n\u003cp\u003eReleased on December 31, 2024.\u003c/p\u003e\n\u003cp\u003eFixed\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Amends missing changelog\n\u003ch2\u003eVersion 1.3.6\u003c/h2\u003e\n\u003cp\u003eReleased on December 23, 2024.\u003c/p\u003e\n\u003cp\u003eNew\u003c/p\u003e\n\u003cpre\u003e\u003ccode\u003e\n- Support for Python 3.12 \u0026amp;amp; 3.13\n\nFixed\n\u0026lt;/code\u0026gt;\u0026lt;/pre\u0026gt;\n\u0026lt;ul\u0026gt;\n\u0026lt;li\u0026gt;Escaping in docstrings (\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;_)\u0026lt;/li\u0026gt;\n\u0026lt;/ul\u0026gt;\n\u0026lt;p\u0026gt;.. _\u0026lt;code\u0026gt;[#608](https://github.com/pyeve/cerberus/issues/608)\u0026lt;/code\u0026gt;: \u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/608\u0026quot;\u0026gt;pyeve/cerberus#608\u0026lt;/a\u0026gt;\u0026lt;/p\u0026gt;\n\u0026lt;/blockquote\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/pyeve/cerberus/commit/c07c2f942873bd90d333347cb679850a85680aa6\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c07c2f9\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Amends CHANGES.rst and bumos to version to 1.3.7\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/52586f332d904422c91be241acf1d55849086d1b\u0026quot;\u0026gt;\u0026lt;code\u0026gt;52586f3\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Bumps version to 1.3.6\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/16334e58a53ae84169e61a2016228a6f1d20a1fa\u0026quot;\u0026gt;\u0026lt;code\u0026gt;16334e5\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; pyproject.toml: Fixes 'requires-python'\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/baab693aba6ec49956c89c89cb3b98dcf7f865a3\u0026quot;\u0026gt;\u0026lt;code\u0026gt;baab693\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.13\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/22e3a272c4c1c551e199439bb66156702598829e\u0026quot;\u0026gt;\u0026lt;code\u0026gt;22e3a27\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Updates some hyperlinks\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/c1305dc89f2b23ff41ffa3e706b9357529e3cccc\u0026quot;\u0026gt;\u0026lt;code\u0026gt;c1305dc\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Let's pytest throw errors on warnings\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/b392d3af7f9aa47a71b5c045e1f22a1f9df56521\u0026quot;\u0026gt;\u0026lt;code\u0026gt;b392d3a\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Adds support for Python 3.12 (\u0026lt;a href=\u0026quot;https://redirect.github.com/pyeve/cerberus/issues/609\u0026quot;\u0026gt;#609\u0026lt;/a\u0026gt;)\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/84148a20b515eeb701fecb363c01b9cb28da4514\u0026quot;\u0026gt;\u0026lt;code\u0026gt;84148a2\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Merge remote-tracking branch 'upstream/1.3.x' into 1.3.x\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/29ba7d71881ee435bb920fe62ece98a39f5e816d\u0026quot;\u0026gt;\u0026lt;code\u0026gt;29ba7d7\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; CHANGELOG: Updates referenced URLs\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;\u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/commit/db88092f0b9af3d3f711c880bfb5ad461544fb12\u0026quot;\u0026gt;\u0026lt;code\u0026gt;db88092\u0026lt;/code\u0026gt;\u0026lt;/a\u0026gt; Proper escaping\u0026lt;/li\u0026gt;\n\u0026lt;li\u0026gt;Additional commits viewable in \u0026lt;a href=\u0026quot;https://github.com/pyeve/cerberus/compare/1.3.5...1.3.7\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 `black` from 23.10.0 to 24.8.0\n\u003cdetails\u003e\n\u003csummary\u003eRelease notes\u003c/summary\u003e\n\u003cp\u003e\u003cem\u003eSourced from \u003ca href=\"https://github.com/psf/black/releases\"\u003eblack's releases\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash involving indented dummy functions containing newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4318\"\u003e#4318\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/psf/black/blob/main/CHANGES.md\"\u003eblack's changelog\u003c/a\u003e.\u003c/em\u003e\u003c/p\u003e\n\u003cblockquote\u003e\n\u003ch2\u003e24.8.0\u003c/h2\u003e\n\u003ch3\u003eStable style\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix crash when \u003ccode\u003e# fmt: off\u003c/code\u003e is used before a closing parenthesis or bracket. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4363\"\u003e#4363\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePackaging\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003ePackaging metadata updated: docs are explictly linked, the issue tracker is now also\nlinked. This improves the PyPI listing for Black. (\u003ca href=\"https://redirect.github.com/psf/black/issues/4345\"\u003e#4345\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where Black failed to parse a multiline f-string containing another\nmultiline string (\u003ca href=\"https://redirect.github.com/psf/black/issues/4339\"\u003e#4339\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix regression where Black failed to parse an escaped single quote inside an f-string\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bug with Black incorrectly parsing empty lines with a backslash (\u003ca href=\"https://redirect.github.com/psf/black/issues/4343\"\u003e#4343\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix bugs with Black's tokenizer not handling \u003ccode\u003e\\{\u003c/code\u003e inside f-strings very well (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eFix incorrect line numbers in the tokenizer for certain tokens within f-strings\n(\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eImprove performance when a large directory is listed in \u003ccode\u003e.gitignore\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003e\u003cem\u003eBlackd\u003c/em\u003e\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix blackd (and all extras installs) for docker container (\u003ca href=\"https://redirect.github.com/psf/black/issues/4357\"\u003e#4357\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.2\u003c/h2\u003e\n\u003cp\u003eThis is a bugfix release to fix two regressions in the new f-string parser introduced in\n24.4.1.\u003c/p\u003e\n\u003ch3\u003eParser\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix regression where certain complex f-strings failed to parse (\u003ca href=\"https://redirect.github.com/psf/black/issues/4332\"\u003e#4332\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003ePerformance\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eFix bad performance on certain complex string literals (\u003ca href=\"https://redirect.github.com/psf/black/issues/4331\"\u003e#4331\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e24.4.1\u003c/h2\u003e\n\u003ch3\u003eHighlights\u003c/h3\u003e\n\u003cul\u003e\n\u003cli\u003eAdd support for the new Python 3.12 f-string syntax introduced by PEP 701 (\u003ca href=\"https://redirect.github.com/psf/black/issues/3822\"\u003e#3822\u003c/a\u003e)\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch3\u003eStable style\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/psf/black/commit/b965c2a5026f8ba399283ba3e01898b012853c79\"\u003e\u003ccode\u003eb965c2a\u003c/code\u003e\u003c/a\u003e Prepare release 24.8.0 (\u003ca href=\"https://redirect.github.com/psf/black/issues/4426\"\u003e#4426\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/9ccf279a17ff19cc51f62c60fc88ba46e615d202\"\u003e\u003ccode\u003e9ccf279\u003c/code\u003e\u003c/a\u003e Document \u003ccode\u003efind_project_root\u003c/code\u003e ignoring \u003ccode\u003epyproject.toml\u003c/code\u003e without \u003ccode\u003e[tool.black]\u003c/code\u003e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/14b6e619704e6d81749f0a23060750ee0a5fcc40\"\u003e\u003ccode\u003e14b6e61\u003c/code\u003e\u003c/a\u003e fix: Enhace black efficiently to  skip directories listed in .gitignore (\u003ca href=\"https://redirect.github.com/psf/black/issues/4415\"\u003e#4415\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b1c4dd96d769cb3ac3c8fc057e8dc60907b84c17\"\u003e\u003ccode\u003eb1c4dd9\u003c/code\u003e\u003c/a\u003e fix: respect braces better in f-string parsing (\u003ca href=\"https://redirect.github.com/psf/black/issues/4422\"\u003e#4422\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/4b4ae43e8b66a2eab2d41a73364745c2a4570287\"\u003e\u003ccode\u003e4b4ae43\u003c/code\u003e\u003c/a\u003e Fix incorrect linenos on fstring tokens with escaped newlines (\u003ca href=\"https://redirect.github.com/psf/black/issues/4423\"\u003e#4423\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7fa1faf83af513e09c44e029da573c6b0b2bd570\"\u003e\u003ccode\u003e7fa1faf\u003c/code\u003e\u003c/a\u003e docs: fix the installation command of extra for blackd (\u003ca href=\"https://redirect.github.com/psf/black/issues/4413\"\u003e#4413\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/8827accf560c7be418000962565f1fd6fa7b01cb\"\u003e\u003ccode\u003e8827acc\u003c/code\u003e\u003c/a\u003e Bump sphinx from 7.3.7 to 7.4.0 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4404\"\u003e#4404\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/b0da11d370adb5730fd45594cc89b1dc816786ea\"\u003e\u003ccode\u003eb0da11d\u003c/code\u003e\u003c/a\u003e Bump furo from 2024.5.6 to 2024.7.18 in /docs (\u003ca href=\"https://redirect.github.com/psf/black/issues/4409\"\u003e#4409\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/721dff549362f54930ecc038218dcc40e599a875\"\u003e\u003ccode\u003e721dff5\u003c/code\u003e\u003c/a\u003e fix: avoid formatting backslash strings inside f-strings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4401\"\u003e#4401\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/psf/black/commit/7e2afc9bfdc4ec4bc3297aaa16a62d575249a5e0\"\u003e\u003ccode\u003e7e2afc9\u003c/code\u003e\u003c/a\u003e Update \u003ccode\u003eactions/checkout\u003c/code\u003e to v4 to stop node deprecation warnings (\u003ca href=\"https://redirect.github.com/psf/black/issues/4379\"\u003e#4379\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/psf/black/compare/23.10.0...24.8.0\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pylint` from 2.17.7 to 3.2.7\n\u003cdetails\u003e\n\u003csummary\u003eCommits\u003c/summary\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/a98215b8c6a6203dd56366bcfe1cd946fb41282a\"\u003e\u003ccode\u003ea98215b\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.7, update changelog\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1deaffababe77e8a025e3b2e5d564d4feb8d987f\"\u003e\u003ccode\u003e1deaffa\u003c/code\u003e\u003c/a\u003e Fix to maintain order of package paths (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9887\"\u003e#9887\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9897\"\u003e#9897\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/b4c2951e62c6ba8e061d4c001192efdedcb6f498\"\u003e\u003ccode\u003eb4c2951\u003c/code\u003e\u003c/a\u003e [Backport maintenance/3.2.x] Fix a crash in \u003ccode\u003eundefined-loop-variable\u003c/code\u003e with `e...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/f1925f46ff4c93e7d191d24746b601cfeb0b4e3c\"\u003e\u003ccode\u003ef1925f4\u003c/code\u003e\u003c/a\u003e Fix crash in refactoring checker when calling bound lambda (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9867\"\u003e#9867\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/7d1626cf869dab1365150265bad45da7e4221bc1\"\u003e\u003ccode\u003e7d1626c\u003c/code\u003e\u003c/a\u003e Fix a false positive \u003ccode\u003eunreachable\u003c/code\u003e for \u003ccode\u003eNoReturn\u003c/code\u003e coroutine functions (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9844\"\u003e#9844\u003c/a\u003e)...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/da1956664d6be3d008a90ad3f72bdd9d8a7ecfaa\"\u003e\u003ccode\u003eda19566\u003c/code\u003e\u003c/a\u003e Bump pylint to 3.2.6, update changelog (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9825\"\u003e#9825\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/810c59ce17a46fb83d5938b591420b906c7c84b5\"\u003e\u003ccode\u003e810c59c\u003c/code\u003e\u003c/a\u003e Update setuptools to \u0026gt;=71.0.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9812\"\u003e#9812\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9824\"\u003e#9824\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/5f19cd5a12c25c6f0e02566ccfcde19c6fee3674\"\u003e\u003ccode\u003e5f19cd5\u003c/code\u003e\u003c/a\u003e Fix a crash when a subclass extends \u003ccode\u003e__slots__\u003c/code\u003e (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9817\"\u003e#9817\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9822\"\u003e#9822\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/c0b1d2228b47e90f80cfb258ade9e23a5f36d153\"\u003e\u003ccode\u003ec0b1d22\u003c/code\u003e\u003c/a\u003e Bump astroid to 3.2.4 (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9816\"\u003e#9816\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9821\"\u003e#9821\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pylint-dev/pylint/commit/1d877de1f0f9889841d7e2a780ff2aad2f823213\"\u003e\u003ccode\u003e1d877de\u003c/code\u003e\u003c/a\u003e Fix consider-using-min-max-builtin (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9802\"\u003e#9802\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pylint-dev/pylint/issues/9803\"\u003e#9803\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pylint-dev/pylint/compare/v2.17.7...v3.2.7\"\u003ecompare view\u003c/a\u003e\u003c/li\u003e\n\u003c/ul\u003e\n\u003c/details\u003e\n\u003cbr /\u003e\n\nUpdates `pytest` from 7.4.2 to 8.3.5\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.3.5\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.5 (2025-03-02)\u003c/h1\u003e\n\u003ch2\u003eBug fixes\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/11777\"\u003e#11777\u003c/a\u003e: Fixed issue where sequences were still being shortened even with \u003ccode\u003e-vv\u003c/code\u003e verbosity.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12888\"\u003e#12888\u003c/a\u003e: Fixed broken input when using Python 3.13+ and a \u003ccode\u003elibedit\u003c/code\u003e build of Python, such as on macOS or with uv-managed Python binaries from the \u003ccode\u003epython-build-standalone\u003c/code\u003e project. This could manifest e.g. by a broken prompt when using \u003ccode\u003ePdb\u003c/code\u003e, or seeing empty inputs with manual usage of \u003ccode\u003einput()\u003c/code\u003e and suspended capturing.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13026\"\u003e#13026\u003c/a\u003e: Fixed \u003ccode\u003eAttributeError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e when top-level directory same name as another module of the standard library.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13053\"\u003e#13053\u003c/a\u003e: Fixed a regression in pytest 8.3.4 where, when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e, a directory containing py file with the same name would cause an \u003ccode\u003eImportError\u003c/code\u003e\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13083\"\u003e#13083\u003c/a\u003e: Fixed issue where pytest could crash if one of the collected directories got removed during collection.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e: Added dedicated page about using types with pytest.\u003c/p\u003e\n\u003cp\u003eSee \u003ccode\u003etypes\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;} for detailed usage.\u003c/p\u003e\n\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/13112\"\u003e#13112\u003c/a\u003e: Fixed selftest failures in \u003ccode\u003etest_terminal.py\u003c/code\u003e with Pygments \u0026gt;= 2.19.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e: Support for Towncrier versions released in 2024 has been re-enabled\nwhen building Sphinx docs -- by \u003ccode\u003ewebknjaz\u003c/code\u003e{.interpreted-text role=\u0026quot;user\u0026quot;}.\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003e8.3.4\u003c/h2\u003e\n\u003ch1\u003epytest 8.3.4 (2024-12-01)\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/12592\"\u003e#12592\u003c/a\u003e: Fixed \u003ccode\u003eKeyError\u003c/code\u003e{.interpreted-text role=\u0026quot;class\u0026quot;} crash when using \u003ccode\u003e--import-mode=importlib\u003c/code\u003e in a directory layout where a directory contains a child directory with the same name.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12818\"\u003e#12818\u003c/a\u003e: Assertion rewriting now preserves the source ranges of the original instructions, making it play well with tools that deal with the \u003ccode\u003eAST\u003c/code\u003e, like \u003ca href=\"https://github.com/alexmojaki/executing\"\u003eexecuting\u003c/a\u003e.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12849\"\u003e#12849\u003c/a\u003e: ANSI escape codes for colored output now handled correctly in \u003ccode\u003epytest.fail\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} with [pytrace=False]{.title-ref}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/9353\"\u003e#9353\u003c/a\u003e: \u003ccode\u003epytest.approx\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;} now uses strict equality when given booleans.\u003c/p\u003e\n\u003c/li\u003e\n\u003c/ul\u003e\n\u003ch2\u003eImproved documentation\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10558\"\u003e#10558\u003c/a\u003e: Fix ambiguous docstring of \u003ccode\u003epytest.Config.getoption\u003c/code\u003e{.interpreted-text role=\u0026quot;func\u0026quot;}.\u003c/p\u003e\n\u003c/li\u003e\n\u003cli\u003e\n\u003cp\u003e\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/10829\"\u003e#10829\u003c/a\u003e: Improve documentation on the current handling of the \u003ccode\u003e--basetemp\u003c/code\u003e option and its lack of retention functionality (\u003ccode\u003etemporary directory location and retention\u003c/code\u003e{.interpreted-text role=\u0026quot;ref\u0026quot;}).\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/b55ab2aabb68c0ce94c3903139b062d0c2790152\"\u003e\u003ccode\u003eb55ab2a\u003c/code\u003e\u003c/a\u003e Prepare release version 8.3.5\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e217726d2a0edfaf58eae95bf835b85834b96da3\"\u003e\u003ccode\u003ee217726\u003c/code\u003e\u003c/a\u003e Added dedicated page about using types with pytest \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12842\"\u003e#12842\u003c/a\u003e (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/12963\"\u003e#12963\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13260\"\u003e#13260\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2fa3f8306c3da4aad7f7349a4947ac37ba6c652f\"\u003e\u003ccode\u003e2fa3f83\u003c/code\u003e\u003c/a\u003e Add more resources and studies to flaky tests page in docs (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13250\"\u003e#13250\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13259\"\u003e#13259\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/e5c2efe3c36199731b41fd68bbf4df5e21404a8b\"\u003e\u003ccode\u003ee5c2efe\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13256\"\u003e#13256\u003c/a\u003e from webknjaz/maintenance/towncrier-bump (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13258\"\u003e#13258\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/3419674225a3a7b7d6f93650d75f6de52fe637d5\"\u003e\u003ccode\u003e3419674\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13187\"\u003e#13187\u003c/a\u003e from pytest-dev/patchback/backports/8.3.x/b4009b319...\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/b75cfb162dbb927739698effa3fbcf279655da49\"\u003e\u003ccode\u003eb75cfb1\u003c/code\u003e\u003c/a\u003e Add readline workaround for libedit (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13176\"\u003e#13176\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/edbfff72a4051ed9c5f3d9b5d6f316b407cb6961\"\u003e\u003ccode\u003eedbfff7\u003c/code\u003e\u003c/a\u003e doc: Clarify capturing .readouterr() return value (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13222\"\u003e#13222\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13225\"\u003e#13225\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/2ebba0063c66b77a7bd171221de059f3b3e47b86\"\u003e\u003ccode\u003e2ebba00\u003c/code\u003e\u003c/a\u003e Merge pull request \u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13199\"\u003e#13199\u003c/a\u003e from jakkdl/tox_docs_no_fetch (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13200\"\u003e#13200\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/eb6496b79759f9acde581ed9d7a0777a49b5f820\"\u003e\u003ccode\u003eeb6496b\u003c/code\u003e\u003c/a\u003e doc: Change training to remote only (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13196\"\u003e#13196\u003c/a\u003e) (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13197\"\u003e#13197\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest/commit/78cf1f67f707fc07372a89775fd10d2065b5f17a\"\u003e\u003ccode\u003e78cf1f6\u003c/code\u003e\u003c/a\u003e ci: Bump build-and-inspect-python-package (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest/issues/13188\"\u003e#13188\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest/compare/7.4.2...8.3.5\"\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.1.0 to 5.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\u003e5.0.0 (2024-03-24)\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eRemoved support for xdist rsync (now deprecated).\nContributed by Matthias Reichenbach in \u003ccode\u003e[#623](https://github.com/pytest-dev/pytest-cov/issues/623) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/623\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eSwitched docs theme to Furo.\u003c/li\u003e\n\u003cli\u003eVarious legacy Python cleanup and CI improvements.\nContributed by Christian Clauss and Hugo van Kemenade in\n\u003ccode\u003e[#630](https://github.com/pytest-dev/pytest-cov/issues/630) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/630\u0026gt;\u003c/code\u003e\u003cem\u003e,\n\u003ccode\u003e[#631](https://github.com/pytest-dev/pytest-cov/issues/631) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/631\u0026gt;\u003c/code\u003e\u003c/em\u003e,\n\u003ccode\u003e[#632](https://github.com/pytest-dev/pytest-cov/issues/632) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/632\u0026gt;\u003c/code\u003e_ and\n\u003ccode\u003e[#633](https://github.com/pytest-dev/pytest-cov/issues/633) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/633\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eAdded a \u003ccode\u003epyproject.toml\u003c/code\u003e example in the docs.\nContributed by Dawn James in \u003ccode\u003e[#626](https://github.com/pytest-dev/pytest-cov/issues/626) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/626\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eModernized project's pre-commit hooks to use ruff. Initial POC contributed by\nChristian Clauss in \u003ccode\u003e[#584](https://github.com/pytest-dev/pytest-cov/issues/584) \u0026lt;https://github.com/pytest-dev/pytest-cov/pull/584\u0026gt;\u003c/code\u003e_.\u003c/li\u003e\n\u003cli\u003eDropped support for Python 3.7.\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/5295ce01c84262cec88f31255e9ac538718f3047\"\u003e\u003ccode\u003e5295ce0\u003c/code\u003e\u003c/a\u003e Bump version: 4.1.0 → 5.0.0\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1181b067972bf94569f8011f3b18f271690f9ab1\"\u003e\u003ccode\u003e1181b06\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9757222e2e044361e70125ebdd96e5eb87395983\"\u003e\u003ccode\u003e9757222\u003c/code\u003e\u003c/a\u003e Fix a minor grammar error (\u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/636\"\u003e#636\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/9f5cd81a0dbe3fe41681efdbef516c08988fe8ff\"\u003e\u003ccode\u003e9f5cd81\u003c/code\u003e\u003c/a\u003e Cleanup releasing instructions. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/616\"\u003e#616\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/93b5047ec5050d63c10a6fe16a09b671a7a03df8\"\u003e\u003ccode\u003e93b5047\u003c/code\u003e\u003c/a\u003e Add test for pyproject.toml loading without explicit --cov-config. Ref \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/508\"\u003e#508\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/ff50860d7c67b920503745d92a3f0944cf41f982\"\u003e\u003ccode\u003eff50860\u003c/code\u003e\u003c/a\u003e docs: add config instructions for pyproject.toml.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/4a5a4b5fa4b1c63ddcab5cbc1813798c9b6f1d36\"\u003e\u003ccode\u003e4a5a4b5\u003c/code\u003e\u003c/a\u003e Keep GitHub Actions up to date with GitHub's Dependabot\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/1d7f55963d5138f41c452a946f7cca7e0b6ee8b2\"\u003e\u003ccode\u003e1d7f559\u003c/code\u003e\u003c/a\u003e Fix or remove URLs that are causing docs tests to fail\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/6a5af8e85b8242ac815f33e26adf9068f5f0ebc3\"\u003e\u003ccode\u003e6a5af8e\u003c/code\u003e\u003c/a\u003e Update changelog.\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/pytest-dev/pytest-cov/commit/d9fe8dfed15023d3410dd299c5092e755b8981c2\"\u003e\u003ccode\u003ed9fe8df\u003c/code\u003e\u003c/a\u003e Switch to furo. Closes \u003ca href=\"https://redirect.github.com/pytest-dev/pytest-cov/issues/618\"\u003e#618\u003c/a\u003e.\u003c/li\u003e\n\u003cli\u003eAdditional commits viewable in \u003ca href=\"https://github.com/pytest-dev/pytest-cov/compare/v4.1.0...v5.0.0\"\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.31.0.10 to 2.32.0.20241016\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 `types-pyyaml` from 6.0.12.12 to 6.0.12.20241230\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 `bandit` from 1.7.5 to 1.7.10\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.7.10\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.4.0 to 6.0.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/1147\"\u003ePyCQA/bandit#1147\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eSuggested small refactors in assignments 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/1150\"\u003ePyCQA/bandit#1150\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePerformance improvement in blacklist function 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/1148\"\u003ePyCQA/bandit#1148\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd test for usage of FTP_TLS 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/1149\"\u003ePyCQA/bandit#1149\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew check: B113: TrojanSource - Bidirectional control characters by \u003ca href=\"https://github.com/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.0.0 to 6.1.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/1152\"\u003ePyCQA/bandit#1152\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003efeat(plugins): add support for \u003ccode\u003ehttpx\u003c/code\u003e in \u003ccode\u003eB113\u003c/code\u003e by \u003ca href=\"https://github.com/mkniewallner\"\u003e\u003ccode\u003e@​mkniewallner\u003c/code\u003e\u003c/a\u003e in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/1060\"\u003ePyCQA/bandit#1060\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNit: remove unused variable 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/1153\"\u003ePyCQA/bandit#1153\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd recent releases to version choice in bug report 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/1151\"\u003ePyCQA/bandit#1151\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.1.0 to 6.2.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/1155\"\u003ePyCQA/bandit#1155\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.2.0 to 6.3.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/1157\"\u003ePyCQA/bandit#1157\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-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/1156\"\u003ePyCQA/bandit#1156\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.4.0 to 3.5.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/1158\"\u003ePyCQA/bandit#1158\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.2.0 to 3.3.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/1159\"\u003ePyCQA/bandit#1159\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.3.0 to 6.5.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/1160\"\u003ePyCQA/bandit#1160\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.5.0 to 3.6.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/1163\"\u003ePyCQA/bandit#1163\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.5.0 to 6.6.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/1166\"\u003ePyCQA/bandit#1166\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.5.0 to 3.6.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/1165\"\u003ePyCQA/bandit#1165\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 6.6.1 to 6.7.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/1168\"\u003ePyCQA/bandit#1168\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUse consistent file naming of 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/1170\"\u003ePyCQA/bandit#1170\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003ePytorch Load / Save Plugin 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/1114\"\u003ePyCQA/bandit#1114\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/Lucas-C\"\u003e\u003ccode\u003e@​Lucas-C\u003c/code\u003e\u003c/a\u003e made their first contribution in \u003ca href=\"https://redirect.github.com/PyCQA/bandit/pull/757\"\u003ePyCQA/bandit#757\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.7.9...1.7.10\"\u003ehttps://github.com/PyCQA/bandit/compare/1.7.9...1.7.10\u003c/a\u003e\u003c/p\u003e\n\u003ch2\u003e1.7.9\u003c/h2\u003e\n\u003ch2\u003eWhat's Changed\u003c/h2\u003e\n\u003cul\u003e\n\u003cli\u003eBump docker/build-push-action from 5.1.0 to 5.2.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/1117\"\u003ePyCQA/bandit#1117\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/1119\"\u003ePyCQA/bandit#1119\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eNew logo for Bandit based on raccoon 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/1121\"\u003ePyCQA/bandit#1121\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eStart testing on Python 3.13 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/1122\"\u003ePyCQA/bandit#1122\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/build-push-action from 5.2.0 to 5.3.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/1123\"\u003ePyCQA/bandit#1123\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.1.0 to 3.2.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/1124\"\u003ePyCQA/bandit#1124\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.0.0 to 3.1.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/1125\"\u003ePyCQA/bandit#1125\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/1126\"\u003ePyCQA/bandit#1126\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/1127\"\u003ePyCQA/bandit#1127\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/setup-buildx-action from 3.2.0 to 3.3.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/1130\"\u003ePyCQA/bandit#1130\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/1131\"\u003ePyCQA/bandit#1131\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump sigstore/cosign-installer from 3.4.0 to 3.5.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/1132\"\u003ePyCQA/bandit#1132\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/1133\"\u003ePyCQA/bandit#1133\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eUpdates banner logo so it renders well in dark mode 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/1134\"\u003ePyCQA/bandit#1134\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/1135\"\u003ePyCQA/bandit#1135\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eAdd a sponsor section to README 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/1137\"\u003ePyCQA/bandit#1137\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eEnsure sarif extra is included as part of doc 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/1139\"\u003ePyCQA/bandit#1139\u003c/a\u003e\u003c/li\u003e\n\u003cli\u003eBump docker/login-action from 3.1.0 to 3.2.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/1142\"\u003ePyCQA/bandit#1142\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/1143\"\u003ePyCQA/bandit#1143\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/36fd65054fc8864b4037d0918904f9331512feb5\"\u003e\u003ccode\u003e36fd650\u003c/code\u003e\u003c/a\u003e Pytorch Load / Save Plugin (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1114\"\u003e#1114\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/4ac55dfaaacf2083497831294b2dcd7e679f8428\"\u003e\u003ccode\u003e4ac55df\u003c/code\u003e\u003c/a\u003e Use consistent file naming of docs (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1170\"\u003e#1170\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/68022aa1d626a7702e3154987f4be278484033fb\"\u003e\u003ccode\u003e68022aa\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.6.1 to 6.7.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1168\"\u003e#1168\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/77566a00b6c2486049247acdf6dab327dc03845b\"\u003e\u003ccode\u003e77566a0\u003c/code\u003e\u003c/a\u003e Bump sigstore/cosign-installer from 3.5.0 to 3.6.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1165\"\u003e#1165\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/221ced660e04fe84d617e625114afa7fdbe173f3\"\u003e\u003ccode\u003e221ced6\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.5.0 to 6.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1166\"\u003e#1166\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/701b7d541723f7543663f7798a5266f5141f3212\"\u003e\u003ccode\u003e701b7d5\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.5.0 to 3.6.1 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1163\"\u003e#1163\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/320495c4cf0c14f1b376d5699b581b994f509af4\"\u003e\u003ccode\u003e320495c\u003c/code\u003e\u003c/a\u003e Bump docker/build-push-action from 6.3.0 to 6.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1160\"\u003e#1160\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/90490c705926432df1922e5b73b94d0e21958c1a\"\u003e\u003ccode\u003e90490c7\u003c/code\u003e\u003c/a\u003e Bump docker/login-action from 3.2.0 to 3.3.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1159\"\u003e#1159\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/708ab749502d79556eae5778561a7ae16b31be22\"\u003e\u003ccode\u003e708ab74\u003c/code\u003e\u003c/a\u003e Bump docker/setup-buildx-action from 3.4.0 to 3.5.0 (\u003ca href=\"https://redirect.github.com/PyCQA/bandit/issues/1158\"\u003e#1158\u003c/a\u003e)\u003c/li\u003e\n\u003cli\u003e\u003ca href=\"https://github.com/PyCQA/bandit/commit/89d2345a8edbd6e1ade45e01919462910ed47ce3\"\u003e\u003ccode\u003e89d2345\u003c/code\u003e\u003c/a\u003e Bump docker/se...\n\n_Description has been truncated_","html_url":"https://github.com/eugene-davis/vault-assessment-prometheus-exporter/pull/214","url":"https://dependabot.ecosyste.ms/api/v1/hosts/GitHub/repositories/eugene-davis%2Fvault-assessment-prometheus-exporter/issues/214","packages_url":"https://dependabot.ecosyste.ms/api/v1/issues/214/packages"}}]}